【发布时间】:2010-02-24 19:11:36
【问题描述】:
我已经尝试上下搜索,但找不到任何东西。我在列表视图中有一个组合框。列表视图绑定到通过数据上下文绑定到的控制器公开的对象列表。列表中项目的属性之一是字符串。我正在尝试将该值绑定到组合框中的内容。
这是我的列表视图的 sn-p
<ListView ItemsSource="{Binding Path=OrderLines}" >
<ListView.View>
<GridView>
<GridViewColumn Header="Item Type" Width="Auto">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox Width="100" SelectedItem="{Binding Path=LineType,ValidatesOnDataErrors=True}" >
<ComboBoxItem>Type1</ComboBoxItem>
<ComboBoxItem>Type2</ComboBoxItem>
<ComboBoxItem>Type3</ComboBoxItem>
<ComboBoxItem>Type4</ComboBoxItem>
</ComboBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
在控制器中,我有一个像这样的名为 OrderLines 的属性
private List<OrderLine> orderLines;
public List<OrderLine> OrderLines
{
get { return orderLines; }
set
{
if (value == orderLines)
return;
orderLines= value;
OnPropertyChanged("OrderLines");
}
}
OrderLine 只有一个名为 LineType 的属性,它是一个包含值的字符串。
private string lineType;
public string LineType
{
get { return lineType; }
set
{
lineType= value;
OnPropertyChanged("LineType ");
}
}
任何人都可以帮助解释为什么未设置所选项目/值。这与我的内容被硬编码有关吗?感谢您的帮助。
【问题讨论】:
标签: wpf combobox wpf-controls