如何解决在另一个窗口中访问公共 ObservableCollection
我在 BoolStringClass
中定义了一个公共类 MainWindow.xaml.cs
:
public class BoolStringClass
{
public string OptionName { get; set; }
public bool IsSelected { get; set; }
}
我使用这个类在 ObservableCollection
中定义一个 MainWindow.xaml.cs
:
public ObservableCollection<BoolStringClass> BoolStringList { get; set; }
点击按钮后,新行会添加到 BoolStringList
中的 private void
:
private void ButtonClick(object sender,RoutedEventArgs e)
{
bool boolKeyValue = true;
BoolStringList.Add(new BoolStringClass() { IsSelected = boolKeyValue,OptionName = "BingWeather" });
BoolStringList.Add(new BoolStringClass() { IsSelected = boolKeyValue,OptionName = "Cortana" });
}
BoolStringList
用于在 CheckBox
中的 ListBox
中动态创建 MainWindow.xaml
,效果很好 (image of MainWindow working correctly):
<ListBox ItemsSource="{Binding BoolStringList}">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected}" Content="{Binding OptionName}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
一个新窗口 SecondWindow
被创建并可以通过在 private void
中点击 MainWindow
按钮打开,并将上面的 Listbox
添加到 SecondWindow.xaml
,其中在向 BoolStringList
(image of SecondWindow not displaying correctly) 添加数据之前或之后,列表框不显示复选框。
SecondWindow.xaml
如何访问 ObservableCollection
中定义的名为 BoolStringList
的 MainWindow.xaml.cs
?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。