class SymbolClass
{
public string Symbol{ get; set; }
public SymbolClass(string symbol)
{
Symbol = symbol;
}
}
public static IEnumerable<SymbolClass> ReadCsv(string fileName)
{
string[] lines = File.ReadAllLines(System.IO.Path.ChangeExtension(fileName, ".csv"));
return lines.Select(line =>
{
string[] data = line.Split(';');
return new SymbolClass(data[0]);
});
}
创建wpf窗口:
ListBox.ItemsSource = SymbolClass.ReadCsv("example");
和XAML
<ListBox x:Name="ListBox" DisplayMemberPath="Symbol">
现在我想在此列表框中启动foreach
foreach (ListBoxItem item in ListBox.Items)
{
MessageBox.Show(item);
}
但我没看到
DisplayMemberPath="Symbol"
我只看到
Namespace.SymbolClass
但如果我设置一个突破,我会看到SymbolClass
获取我想要显示的属性。
如何显示此DisplayMemberPath="Symbol"
?
答案 0 :(得分:1)
鉴于您的编辑,我建议您在代码中真正想要的是:
foreach (Namespace.ClassName item in ListBox.Items)
{
Message.Box(item.Symbol);
}
C#将生成代码供您投射到您指定的类型。所以剩下的就是让你展示你感兴趣的房产。