ListBox - Checked Item属性

时间:2017-07-24 08:18:41

标签: c# wpf

我有ListBox CheckBox个es。我想要的是,无论何时我检查或取消选中其中一个CheckBox es,都应该执行一些代码。我试过这个

XAML:

<ListBox ItemsSource="{Binding Stations, Mode=TwoWay}" SelectedItem="{Binding SelectedStation}" />

C#

private void GetStations()
{
    foreach (var stationName in _databaseService.GetStations())
    {
        Stations.Add(new CheckBox() { Content = stationName });
    }
}

private string selectedStation;
public string SelectedStation
{
    get { return this.selectedStation; }
    set
    {
        this.selectedStation = value;
        OnPropertyChanged("SelectedStation");
        //my code here
    }
}

现在问题是SelectedItem属性无法检查CheckBox es。它只对所选项目做出反应。是否有ListBox的属性对CheckBox检查作出反应?实现这个目标的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

嘿,我不确定你为什么在ListBoX内使用CheckBox es。有一个指定的元素,CheckedListBox。使用此元素,您应该能够使用SelectedIndexChanged事件。

答案 1 :(得分:0)

如果您想从ListBox es获得反应,为什么要绑定CheckBox? 在XAML中绑定CheckBox es。并有像isChecked这样的bool变量或类似的东西。使用该标记,您可以更改ListBox并在检查CheckBox时执行代码。

请记住,您始终可以使用CheckBox es。

的索引