WPF如何在代码后台设置复选框的IsChecked绑定

5

我需要在代码后端创建一个样式。它有一个看起来像这样的复选框:

<CheckBox 
              HorizontalAlignment="Center"
              VerticalAlignment="Center"
              IsChecked="{Binding Path=DataItem.IsChecked}"
              >
</CheckBox>

我该如何在代码后端中复制这个内容?

请看这里Carlos的回答:https://dev59.com/7nNA5IYBdhLWcg3wrf03 - abramlimpin
2个回答

6

类似这样的:

CheckBox myCheckBox = new CheckBox();
myCheckBox.HorizontalAlignment = HorizontalAlignment.Center;
myCheckBox.VerticalAlignment = VerticalAlignment.Center;
myCheckBox.SetBinding(ToggleButton.IsCheckedProperty, "DataItem.IsChecked");

我的 myCheckBox.SetBinding(ToggleButton.IsCheckedProperty, "DataItem.IsChecked"); 不起作用。我认为应该使用 CheckBox.IsCheckedProperty - Aks
IsCheckedProperty被定义在ToggleButton类中。CheckBox继承自ToggleButton。具体是什么问题? - Pavlo Glazkov
它无法识别 ToggleButton 作为一个类。但这个方法有效。谢谢。 - Aks

0
var myCheckBox = new CheckBox() {DataContext = DataItem };
myCheckBox.SetBinding(ToggleButton.IsCheckedProperty, new Binding(nameof(DataItem.IsChecked));

请在您的答案中添加一些解释,以便他人可以从中学习。 - Nico Haase

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接