问题标签 [itemssource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
199 浏览

c# - 如何获取绑定到 ObservableCollection 以响应添加的 UserControl 派生类?

我的集合看起来不错,因为我可以使用 ListView 并且它可以正确响应添加,但是当我将 listview 嵌套到 UserControl 中时它不会。我已经提供了相关的代码。

我以这种方式创建了一个 UserControl 派生类:

使用这样的 XAML:

我的消费 XAML 如下所示:

集合的定义如下:

0 投票
0 回答
257 浏览

wpf - 在网格中填充 ComboBox

我有ViewModel两个集合属性。我用来填充DataContext设置为 this的页面上的表单字段的一个集合ViewModel。在这个表格中,在填充了集合的字段中,我还有一个ComboBox我想用其他集合填充的字段。

我使用 Grid 进行布局,并将此 GridDataContext设置为第一个集合。当我有一个ComboBox网格之外时,我可以很容易地用第二个集合填充它。但是一旦我尝试在网格中这样做时,我似乎无法完成它。

在代码片段中,我将 Grid 设置DataContextItemTypes. 从ItemTypes字段中可以得到它们的值。虽然ComboBox需要从其他集合中获取其值:

0 投票
1 回答
175 浏览

wpf - 使用 WPF 进行数据绑定

我是 WPF 的新手,下面的内容让我困惑了一段时间:

我的模型中有一个 observableCollection of People 对象,它绑定到我的 tabControl。因此,每添加一个新的 People 对象,就会创建一个新选项卡,其中 People.Title 作为选项卡的标题。

每个 People 对象都有一个 Friend 对象的 ObservableCollection。在选项卡内部,我想要一个包含两个文本框的列表,一个用于 Friend.FirstName,另一个用于 Friend.LastName。

我的第一个要求工作正常,但第二个要求给我一个错误'ItemsSource is already in use'

到目前为止,这是我的代码:

我感谢您的帮助。

0 投票
3 回答
6507 浏览

wpf - 更改 Button.Click 上的 ListBox.ItemsSource 绑定属性?

快速提问...

我有一个ListBoxItemsSource属性绑定到视图模型中的集合属性,如下所示:

Button我在同一个视图中也有两个对象。问题是...我可以CollectionsListBox ItemsSource Binding从使用 XAML更改Activity.Timesheets为吗?Activity.Attachments

做不到这一点,从使用命令对象的视图模型?

编辑>>>

我从霍华德的部分答案中使用RadioButtons 而不是s 找到了一个简单的解决方案:Button

非常感谢您的帮助。

0 投票
1 回答
228 浏览

c# - 在自定义控件中模仿 ItemsControl 行为

我有课标记

和自定义控件,除其他属性外,还公开标记集合

我想模仿 ItemsControl 行为并允许我的组件的用户直接或通过使用 ItemsSource 类比来指定标记。此外,我希望这两种方法都支持数据绑定(最好在 XAML 中)

直接标记

使用 MarkersSource 的标记

第一种方法非常简单,但我正在为第二种方法苦苦挣扎。

如何实现 MarkesSource?如何将 UserSpecifiedCollection 的项目转换为 Marker 类型?UserSpecifiedCollection 项的属性如何数据绑定到 Marker 的属性?

关于转换,我认为可以使用 ValueConvertor,但我更喜欢纯 XAML 解决方案,比如 DataTemplates。有可能的?

0 投票
1 回答
3605 浏览

wpf - 对绑定到 ObservableCollection 的列表框进行排序

如何对我的列表框内容进行排序?在我看来,将其仅保留在 UI 层上会更有意义,因为排序不会影响我的业务逻辑,因此它可能位于 xaml 或代码隐藏中。我不知道该怎么做。

0 投票
1 回答
2492 浏览

wpf - WPF:ICollectionView - 如果项目包含在另一个列表中,则过滤一个列表?

基本上,我有 2 个 ListView,每个绑定到不同的ItemsSource.

列表 1不能更改(它是 a ReadOnlyObservableCollection)。
清单 2可以更改(通过用户交互)。

我需要在列表 1 中添加一个过滤器,这样它就不会显示在列表 2 中找到的任何内容。这是我目前的代码...


List2.ItemsSource 以 IEnumerable 而不是 ObservableCollection (实际上是什么)的形式返回。我想尽可能有效地做到这一点,所以我不确定我是否应该:

  1. 将 ItemsSource 显式转换为 IList 以获得对 Contains 的访问权限?
  2. 自己遍历 ItemsSource 看它是否包含该项目?
  3. 使用 LINQ 的 Cast 扩展方法强制转换为 IList(或其他类型)以获得对 Contains 的访问权限?
  4. 还有什么办法吗?

更新:

第一次渲染后,它似乎没有继续过滤项目:

更新 2:

我想我明白为什么它没有重新应用过滤器。原始集合没有引发 CollectionChanged 通知,因此它不会费心再次运行过滤器。也许解决这部分更适合作为不同的问题?但是,如果有人想在这里回答它:

当 List2 集合更改时,如何让我的 List1 重新应用过滤器?

更新3:我在一个单独的SO问题 中询问了如何与collectionchanged事件联系起来并得到了我的答案。

0 投票
3 回答
15431 浏览

wpf - WPF:如何挂钩到 ListView 的 ItemsSource CollectionChanged 通知?

我有一个ListView数据绑定到ObservableCollection...

我似乎找不到任何在集合更改时触发的事件,所以我想我需要以某种方式挂钩到 collectionchanged 通知?我不确定该怎么做。

基本上,当集合发生变化时,我想做除了 ListView 在更新列表中已经做的工作​​之外的额外工作。

0 投票
1 回答
8332 浏览

wpf - WPF将ItemsSource绑定到静态方法?

我在一个名为“Article”的类中有以下静态方法:

而且我想将它直接绑定到 ComboBox 的 ItemsSource 属性,但在 XAML 中而不是在代码中,我找不到正确的语法。

我认为它应该看起来像这样(EmacGbscCore 是包含 Article 对象的程序集):

提前感谢您的帮助。

0 投票
4 回答
2864 浏览

c# - 显示 ItemsControl.ItemsSource 是否为空

问候,

我有一个 ItemsControl,我更改了哪个模板来为绑定的 ItemsSource 中的每个对象显示一个 RadioButton。

但是 ItemsSource 可以为空,当它为空时,我想显示一个默认值。诸如“绑定列表不包含可供您选择的项目”之类的内容...

我想到的一种方法是将 ItemsControl.Visibility 设置为 Collapsed 并将 TextBlock.Vsibility 设置为 Visible 以显示文本。但这将包含更多数据。

如果 ItemsControl.ItemsSource 为空,是否可以显示默认值?