gpt4 book ai didi

wpf - 在 WPF 中的 ListBox 项和 Grid 单元格之间拖放?

转载 作者:行者123 更新时间:2023-12-04 13:49:22 27 4
gpt4 key购买 nike

有一个列表框,里面有一些项目。还有一个带有 3x3 矩阵的网格。用户将拖动一个项目并将其放在网格的一个单元格上。

我发现的大多数示例都是关于从一个列表框拖放到另一个列表框的。但我想放入一个网格单元格。我怎样才能做到这一点?

请指教。谢谢PJ

最佳答案

请检查以下示例是否适合您:

xaml:

<Grid>
<ListBox Height="100" HorizontalAlignment="Left" Margin="56,65,0,0"
Name="listBox1" VerticalAlignment="Top" Width="120"
PreviewMouseLeftButtonDown="listBox1_PreviewMouseLeftButtonDown">
<ListBoxItem Content="one" />
<ListBoxItem Content="two" />
<ListBoxItem Content="three" />
</ListBox>
<Grid Height="100" HorizontalAlignment="Left" Margin="238,65,0,0" Name="grid1"
VerticalAlignment="Top" Width="200" ShowGridLines="True" TextBlock.Drop="grid1_Drop">
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>

<TextBlock Grid.Row="0" Grid.Column="0" AllowDrop="True"></TextBlock>
<TextBlock Grid.Row="0" Grid.Column="1" AllowDrop="True"></TextBlock>
<TextBlock Grid.Row="1" Grid.Column="0" AllowDrop="True"></TextBlock>
<TextBlock Grid.Row="1" Grid.Column="1" AllowDrop="True"></TextBlock>

</Grid>
</Grid>

代码:

public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}

private void listBox1_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
object item = listBox1.SelectedItem;
if (item != null)
DragDrop.DoDragDrop(listBox1, item, DragDropEffects.Move);
}

private void grid1_Drop(object sender, RoutedEventArgs e)
{
TextBlock textBlock = e.Source as TextBlock;
Console.WriteLine("drop item into grid column:{0} row:{1}",
Grid.GetColumn(textBlock), Grid.GetRow(textBlock));

DataObject item = (((DragEventArgs)e).Data) as DataObject;
ListBoxItem listItem = item.GetData(typeof(ListBoxItem)) as ListBoxItem;
textBlock.Text = listItem.Content.ToString();
}
}

希望这对你有帮助,问候

关于wpf - 在 WPF 中的 ListBox 项和 Grid 单元格之间拖放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2145249/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com