如何以编程方式获取列表框中的绑定项目字符串?

时间:2015-01-10 08:50:37

标签: c# wpf vb.net listbox

我有一个listboxitem,其数据模板具有以下内容:

  <TextBlock Text="{Binding Name}"/>
  <TextBlock Text="{Binding Age}"/>

我使用它来为绑定添加值。

ListBox1.Items.Add(New User() With {.Name= "John Crooks", .Age = 42})
例如,

是否可以以编程方式检索这些数据。我试图以编程方式获取所选项目的年龄。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您可以将SelectedItem属性的值强制转换为数据项类型,然后访问其属性。

在C#中:

if (ListBox1.SelectedItem != null)
{
    var myItem = (MyItem)ListBox1.SelectedItem;
    var name = myItem.Name;
}

在VB中应该是这样的:

Dim myItem As MyItem = CType(ListBox1.SelectedItem, MyItem)
Dim name As String = myItem.Name

答案 1 :(得分:0)

您需要在XAML中声明:

xmlns:localData="YourAssembly.dll"
d:DataContext="{d:DesignInstance Type=localData:YourClass}"