我正在构建一个wpf应用程序,我首先使用Entity Framework代码创建了我的数据库。
我有一个绑定到表的列表框
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());
}
但是我的消息框的结果是:
当然它不可读。
如何获取列表框中显示的所选项目?
对于我要将所选项目绑定到另一个列表框的下一步,您有什么建议吗?
修改
由于我的列表框绑定到数据库中的表,我必须将所选项目转换为我的实体类型。
答案 0 :(得分:1)
您需要获取所选项目的类型和
private void lstDishes_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
var Selected = lstDishes.SelectedItem as Dish;
MessageBox.Show("You selected: " + Selected.Description));
}