好吧,我有一个listview有几个行,这是通过在代码中设置itemsource来定义的。在产生的每一行中,我都有一个组合框。在代码中,我有另一个对象数组,它是这个组合框应该显示的集合。将一个集合绑定到一个列表视图中的组合框
我基本上想要它,以便每行可以从列表中选择一个选项。可能性列表总是相同的,因此是数组。
有点帮助的代码。这就是我对XAML:
<ListView Name="lvVanList">
<ListView.View>
<GridView>
<DisplayMemberBinding="{Binding Path=Number}">Van</GridViewColumn>
<GridViewColumn Header="Rooms">
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<ComboBox Name="cbSchemeList" ItemsSource="{Binding Path=_RoomList}" SelectedValue="{Binding Path=Room}" DisplayMemberPath="Name" />
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View>
</ListView>
的背后代码:
private RoomList _RoomList;
public populateList()
{
this.lvVanList.ItemsSource = this.getVans;
this._RoomList = this.getRooms;
}
private class Room
{
string Name { get; set; }
int Windows { get; set; }
}
可惜这显示空白列表时,组合框是开放的。
我确实有办法通过将可能性列表存储在绑定到每一行的对象中,但我确信我应该能够使用单个集合。
这很难描述,所以如果有任何信息我错过了或不可理解,请让我知道。
预先感谢
不应该将'_RoomList'作为绑定的“公共”来工作吗? – Default 2012-01-12 12:18:23
你的RoomList是什么?它是一个'ObservableCollection <>'? – Default 2012-01-12 12:35:34
它们都在MainWindow类中,即使私人时它也应该可见,正确的 – SumGuy 2012-01-12 13:41:06