ane*_*vil 6 c# wpf checkbox events
获取当前正在检查的内容的正确方法是什么CheckBox.到目前为止,我所做的事情不会对CheckBox所检查的项目触发任何事件:
<ListBox Grid.RowSpan="3" Grid.Column="2" Grid.ColumnSpan="5" Margin="2" ItemsSource="{Binding MachinePositionList}">
<ListBox.ItemTemplate>
<HierarchicalDataTemplate>
<CheckBox Content="{Binding posID}" IsChecked="{Binding IsChecked, Mode=TwoWay}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Checked">
<i:InvokeCommandAction Command="{Binding CurrentCheckedPosition}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</CheckBox>
</HierarchicalDataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Run Code Online (Sandbox Code Playgroud)
非常感谢 :-).
您可以使用已检查的事件:
<CheckBox Name="myCheckBox"
Content="I am a checkbox!"
Checked="myCheckBox_Checked"
Unchecked="myCheckBox_Unchecked" />
Run Code Online (Sandbox Code Playgroud)
这些事件的代码是:
private void myCheckBox_Checked(object sender, RoutedEventArgs e)
{
// ...
}
private void myCheckBox_Unchecked(object sender, RoutedEventArgs e)
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
编辑:刚注意到您具有复选框的内容为“ {Binding posID}”,所以您可以(在复选框列表中)可以执行以下操作:
if (sender != null)
{
int posID = Convert.ToInt32(((CheckBox)sender).Name);
}
Run Code Online (Sandbox Code Playgroud)
这将为您提供“ posID”,您也可以使用它来完成所需的操作。:D
| 归档时间: |
|
| 查看次数: |
16271 次 |
| 最近记录: |