【发布时间】:2011-11-14 04:26:29
【问题描述】:
我有如下课程:
class test
{
public string Name;
public string Location;
}
通过使用实体框架的查询结果,我得到了一组测试对象,我直接将其设置到我的列表框。但是使用 DisplayMemberPath Iam 只是显示 Name 值。所以现在列表框包含整个测试对象集合,但只显示名称值。
当我尝试绑定到列表框的选定项时,我将整个测试对象作为字符串获取,但我只需要选定项结果中的名称值。
我的 XAML 如下:
<ListBox x:Name="lbSubSelector" Height="200" DisplayMemberPath="Name" SelectedItem="{Binding Name, Mode=TwoWay}" />
我填充列表的代码如下:
LoadOperation<test> subLoadOp = context.Load(context.GetTestQuery());
lbSubSelector.ItemsSource = subLoadOp.Entities;
lbSubDistrictSelector.DataContext = SkillModel.Instance;
selectedItem 设置为的 DataContext 具有测试对象的整个字符串表示形式的值,但我希望 selecteditem 在显示时仅返回 Name 值(因为我已将 displaymemberpath 设置为 Name)而不是以字符串格式返回整个对象。
我怎样才能做到这一点?
【问题讨论】:
-
您需要了解 listbox 的 SelectedValue 和 SelectedValuePath 属性。
-
@stukselbax,您需要发布此评论作为答案。
标签: c# wpf silverlight xaml