所以我有一个列表框和一个类。该类称为“任务”,具有三个属性:Name,IsStarted和IsCompleted。

我已经使用了BindingList并将Listbox的数据源设置为该BindingList。效果很好,到目前为止没有问题。

我不知道要怎么做(我希望有可能)是将属性IsStarted和IsCompleted绑定到两个CheckBox,这样,如果我更改选择的Mission,这些CheckBox就会更改以反映SelectedItem的属性。

我很高兴可以通过使用ListBox上的SelectedItemChanged事件来做到这一点,但是我想进行两种方式的绑定,以便在我检查或取消选中CheckBoxes时,类中的数据将发生变化。

最佳答案

您不需要使用事件,使用数据绑定就足够了:

missionsListBox.DataSource = bindingList;
missionsListBox.DisplayMember = "Name";
isStartedCheckBox.DataBindings.Add("Checked", bindingList, "IsStarted");
isCompletedCheckBox.DataBindings.Add("Checked", bindingList, "IsCompleted")


这样,ListBox将充当任务对象的索引,并显示任务列表。选择一个项目时,它会在相应的复选框控件中显示IsStartedIsCompleted的值,您可以使用复选框更改所选项目的值。

关于c# - C#winforms绑定(bind)ListBox SelectedItem的属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43699612/

10-15 04:56