我有一个C#,WPF ListView,每行都有一个复选框和一个字符串。当我单击复选框时,我希望它能够获取同一行中的兄弟字符串但我不太清楚如何。我是WPF菜鸟。
我的列绑定到名为Row的传入对象的属性,该对象具有Name和一个指示它是否处于活动状态的布尔值。
这几乎就像我需要走向可视树以获得“行”,然后抓住不是复选框的孩子。
非常感谢任何建议。 XAML如下。
MJ
<ListView Name="CompanyListView" Width="300" Height="200">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Width="25">
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding Path=Active}" Click="CompanyCheckboxClicked"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Path=Name}" Width="250"/>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
答案 0 :(得分:1)
CheckBox的DataContext应该包含Row对象。
private void CompanyCheckboxClicked(object sender, RoutedEventArgs e)
{
CheckBox checkBox = sender as CheckBox;
Row row = checkBox.DataContext as Row;
...
}