【发布时间】:2010-05-31 15:57:21
【问题描述】:
我正在编写一些代码,使用 wpf 并开始使用 mvvm。到目前为止,我没有问题,当我有一个元素并且我必须在屏幕上显示它的值时(绑定属性的特定名称)。但是现在,我必须使用属性列表,不知道它的名称。所以我创建了一个名为 GClass 的类,它只有两个属性,名称和值。我创建了 ObservableCollection,现在用直接值填充,并用我创建的对象分配视图(lstview)数据上下文。但我看不到任何结果,它总是显示一个空白列表框。有人可以告诉我看看为什么会发生吗?
c#代码
VDt = new ObservableCollection<GClass>();
var vhDt = message.SelectSingleElement(typeof (Vh)) as Vehiculo;
if(vhDt != null)
{
VDt.Add(new GClass() {Name = "Numero: ", Value = ""});
VDt.Add(new GClass() {Name = "Marca: ", Value = ""});
VDt.Add(new GClass() {Name = "Conductor: ", Value = ""});
lstview.DataContext = this;
_regionManager.RegisterViewWithRegionInIndex(RegionNames.MainRegion, lstview, 0);
视图代码
<ListBox Margin="5,5,5,25" ItemsSource="{Binding VDt}">
<ListBox.Template>
<ControlTemplate>
<ListViewItem Content="{Binding Name}"></ListViewItem>
<ListViewItem Content="{Binding Value}"></ListViewItem>
</ControlTemplate>
</ListBox.Template>
</ListBox>
我在这里进行了研究,但我看不到,我做错了什么。如果有人帮助我,我会很感激。
【问题讨论】:
-
您看到填充的列表框还是没有项目?
-
我看到一个空白框,根本没有项目或滚动条,就像您在设计屏幕中看到的列表框一样