如何访问ListBox内部的复选框?

25 浏览
0 Comments

如何访问ListBox内部的复选框?

我有一个列表框,我已经将itemstemplate设置为如下所示。

XAML:


    
        
            
                
                
            
        
    

我想知道哪些复选框被选中了。有没有办法获取每个项目的复选框控件,以便我可以检查它的IsChecked属性。

我可以想到一种绑定IsChecked属性的方法。但是还有其他方法吗?

0
0 Comments

问题的原因是在DataList中访问复选框。一个解决方法是将IsChecked属性绑定到DataList中包含的对象实例的布尔属性上。另一种解决方法是编写一个附加属性来避免使用代码后台。

0
0 Comments

问题出现的原因:

在绑定到列表框的项模板的Title属性时,也有必要绑定到IsChecked属性。

解决方法:

如果确实需要,可以使用VisualTreeHelper来遍历可视化树,以查找CheckBox实例。

0
0 Comments

问题的出现原因:

用户想要访问列表框内的复选框,但不想使用数据绑定的方式。

解决方法:

1. 使用数据绑定的方式通过绑定IsChecked属性来访问复选框。

2. 如果不想使用数据绑定的方式,可以通过迭代列表框中的所有项,并准备一个选中项的列表来实现。可以参考这个链接:WPF - Find a Control from DataTemplate in WPF

0