我有一個簡單的字符串列表,我想要顯示在列表框中,取決於按下按鈕時是否選中複選框。我在我的按鈕偵聽這樣的邏輯:列表框中的項目更新不正常WPF
private void fileSavePerms_Click(object sender, RoutedEventArgs e)
{
foreach (CheckBox checkbox in checkboxList)
{
if (checkbox.IsChecked == true && !permissionList.Contains(checkbox.Name))
{
permissionList.Add(checkbox.Name);
}
else if (checkbox.IsChecked == false && permissionList.Contains(checkbox.Name))
{
permissionList.Remove(checkbox.Name);
}
}
permListBox.ItemsSource = permissionList;
}
據我所知,這是你如何能做到按鈕點擊一個非常簡單的數據綁定。然而,列表框第一次按預期進行更新,但隨後將更新錯誤的列表內容,我嘗試使用該列表填充框。輸出中我看不到任何明顯的模式。
此外,過了一會兒(點擊幾下按鈕),我會發現一個異常,說「an ItemsControl is inconsistent with its items source
」。
我是不是正確設置了我的裝訂或者在錯誤的時間分配了ItemsControl
?
更新:
的XAML列表框:
<ListBox x:Name="permListBox" ItemsSource="{Binding permissionList}" HorizontalAlignment="Left" Height="36" Margin="28,512,0,0" VerticalAlignment="Top" Width="442"/>
您還可以爲此列表框共享相應的XAML嗎? –
@DaveS我已經添加了列表框的XAML,謝謝 – James