如何解决使用 ListBox.ItemSource 访问绑定源有什么问题吗?
在 C# 论坛中有很多关于从另一个类访问在一个类中创建的 UI 对象的讨论,但我发现了一种我认为是可行的简单方法,但以前从未见过这样做过。我有一个在 Page 中用 xaml 代码创建的 ListBox(名称 =”listBox_Msgs”)。 ListBox 的源绑定到 ObservableCollection(string) 对象(请原谅此处使用括号,此问题的文本中未显示正确的括号),该对象在与初始化 Page 的类不同的类中创建,后者是“公共密封部分类 MainPage : Page”。但是,我想从 MainPage 方法向该集合添加一些文本,这些方法可以访问 ListBox 但不能访问该集合。我所做的是定义“ObservableCollection(string) listBoxSource;”在 MainPage 类中,然后在方法中设置“listBoxSource = (ObservableCollection(string) listBox_Msgs.ItemsSource;”。然后我可以使用“listBoxSource.Add(“add something”);”添加到集合中。这有效但是这样做有什么问题吗?总而言之,适用的代码如下所示:
"ListBox x:Name="listBox_Msgs" ItemsSource="{Binding DebugItemCollection}" Grid.Row="3" d:ItemsSource="Messages"/"
类 MainPage 中的代码:
ObservableCollection<string> listBoxSource;
listBoxSource = (ObservableCollection<string>)listBox_Msgs.ItemsSource;
listBoxSource.Add("message");
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。