我可能听起来很蠢,但我想做一些非常简单的事情。在设计时,我想将列添加到listview控件并向其添加一些数据。我需要在listview的每一列中添加组合框。我无法找到的是在listviewitem中提到列号的位置。任何帮助赞赏的人。
<ListView IsSynchronizedWithCurrentItem="True" Margin="8,68,304,188"
BorderThickness="2,2,2,2">
<ListView.View>
<GridView>
<GridViewColumn Width="150" Header="Column1"/>
<GridViewColumn Width="150" Header="Column2"/>
</GridView>
</ListView.View>
<ListViewItem>
</ListViewItem>
</ListView>
答案 0 :(得分:2)
listviewitem中的每一列都是基于GridView定义呈现的,因此没有真正的列号概念。你要做的是将对象绑定到listview的itemsource,并从中创建listviewitems。因此,有几个环节可以跳过。
This link有一个如何做一些简单的对象数据绑定的例子。这样做的好处是,如果将datacontext / itemsource设置为空对象而不是XAML中的静态对象,那么设计时的绑定结构可能会被重用于运行时。
如果您这样做是为了展示示例,或者您只是想要使用静态数据源,我建议您使用XmlDataProvider。然后你将ListView改为这样,
<ListView IsSynchronizedWithCurrentItem="True" Margin="8,68,304,188"
BorderThickness="2,2,2,2">
<ListView.View>
<GridView>
<GridViewColumn Width="150" Header="Column1" DisplayMemberPath="{Binding XPath=/A/B}"/>
<GridViewColumn Width="150" Header="Column2" DisplayMemberPath="{Binding XPath=/A/C"/>
</GridView>
</ListView.View>
<ListViewItem>
</ListViewItem>
</ListView>