有
<ListView ItemsSource="{Binding StudentsList}" SelectedItem="{Binding SelectedStudent}">
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Margin="10">
<TextBlock Text="{Binding}" FontWeight="Bold"/>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding GetGroupNum}" Margin="10,0"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
whereStudentList是一个学生的集合,SelectedStudent是一个特定的选定学生。
需要双击ListView调用命令EditStudent。我只能将命令绑定到Button. 在这种情况下如何进行?
让我们使用这样的东西
InputBindings:这已经有效,但每个人
ItemsControl都有细微差别 - 默认情况下他们不会拉伸元素,如果您在 中设置StackPanel任何颜色,则可以看到这一点Background,因此只有在您清楚地单击元素文本时才会调用该命令。您可以通过调整样式来解决此问题ListViewItem:好吧,你仍然需要对缩进做一些事情,因为
StackPanel Margin="10"你很可能不喜欢你现在拥有的东西,例如,你可以把所有东西都包裹在一个透明的里面Border(InputBindings现在它们正在移动,StackPanel它们不再需要了) :然后元素之间会有视觉缩进,但是该命令将在单击元素中的任意位置时起作用
listview在构造函数中突出显示;MouseDoubleClick在空白处双击,工作室会为你做一切;