【问题标题】:c# WPF selected item from listbox bound to datatablec# WPF 从列表框中选择的项目绑定到数据表
【发布时间】:2015-11-28 13:29:56
【问题描述】:

我正在构建一个 wpf 应用程序,我首先使用实体​​框架代码创建了我的数据库。

我有一个绑定到表格的列表框

XAML

<ListBox x:Name="lstDishes" Height="415" VerticalAlignment="Bottom" Margin="0,0,1032,42" HorizontalAlignment="Right" Width="281" ItemsSource="{Binding}" Background="#FFDDC9B0" BorderBrush="{x:Null}" FontSize="15" MouseDoubleClick="lstDishes_MouseDoubleClick">

XAML.CS

var dish = (from Dish in db.Dishes
            select Dish).ToList();
lstDishes.ItemsSource = dish;
lstDishes.DisplayMemberPath = "Description";

在项目双击时,我想在另一个列表框中显示选定的项目。

我试图管理它,但在我对所选项目进行某种试验之前,双击时显示一个消息框

private void lstDishes_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
   MessageBox.Show("You selected: " + lstDishes.SelectedItem.ToString());
}

但是我的消息框的结果是这样的:

当然不可读。

  • 如何获取列表框中显示的所选项目?

  • 您对下一步将所选项目绑定到另一个列表框有什么建议吗?

编辑

由于我的列表框绑定到数据库中的一个表,我不得不将所选项目作为我的实体类型。

【问题讨论】:

  • 您到底希望MessageBox 显示什么?这是ToString() 的正常行为。

标签: c# wpf linq xaml


【解决方案1】:

需要获取选中项的类型和

private void lstDishes_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
   var Selected =  lstDishes.SelectedItem as Dish;
   MessageBox.Show("You selected: " + Selected.Description));   
}

【讨论】:

  • 谢谢。你能推荐任何关于这个论点的教程吗?这些天我仔细看了看,但我找不到这么简单的东西..
  • 成功了吗?是的,有很多教程。如果你分享电子邮件,我会寄一本书
  • 是的,确实如此。我的电子邮件是:koosshh56@gmail.com。谢谢你的一切
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-07
  • 2016-05-23
  • 2021-10-26
  • 1970-01-01
  • 2015-04-04
  • 2018-12-09
  • 1970-01-01
相关资源
最近更新 更多