3

我有绑定到列表框项目源中的标志枚举值。我用过SelectionMode多个。我想将列表框的所有选定项目分配给一个标志 Enum 属性。如何绑定选定的项目?

private void ListBox_SelectionChanged(object sender,SelectionChangedEventArgs e)
{
    ListBox list = sender as ListBox;

    this.Weekdays=list.SelectedItems.GetType().GetEnumValues().GetEnumerator()      
                                                    as Weekdays;

}

这里的weekdays是Weekdays类型的Flags-Enum。我想将列表框的所有选定项目绑定到Weekdays。

4

1 回答 1

1

下面的代码就是你所需要的!list.SelectedItems包含所有选定的项目,如果选择了多选模式。您可以在列表的选择更改事件期间跟踪它们。您不能将值分配给枚举,而是创建一个列表并使用该列表使用与列表源相同的数据类来存储所选项目。

private List<DataClass> SelectedItemsList = new List<DataClass>();

if (list.SelectedItems.Count >= 0)
{
    for (int i = 0; i < list.SelectedItems.Count; i++)
    {
        SelectedItemsList.Add(list.SelectedIndices[i]);
    }
}
于 2016-05-08T08:00:28.880 回答