问题标签 [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 投票
3 回答
13408 浏览

wpf - 将 ComboBox 的 ItemsSource 设置为整数数组?

将 ComboBox 的 ItemsSource 设置为整数数组?

0 投票
2 回答
5208 浏览

c# - WPF - 绑定树视图不更新根项目

我正在使用 WPF TreeView 控件,我已将其绑定到基于 ObservableCollections 的简单树结构。这是 XAML:

和树结构:

我将这棵树的 ItemsSource 设置为我的树结构的根,并且它的子节点成为树中的根级项(正如我想要的那样):

我可以将新的子节点添加到树结构的各种非根节点中,它们会出现在 TreeView 中它们应该出现的位置。

但是,如果我将一个子节点添加到根节点:

该项目没有出现,并且我没有尝试过(例如将 ItemsSource 设置为 null 然后再返回)导致它出现。

如果我在设置 ItemsSource 之前添加蜥蜴,它们会显示出来,但如果我之后添加它们则不会。

猫出现了,但蜥蜴没有出现

有任何想法吗?

0 投票
1 回答
2168 浏览

wpf - WPF ComboBox 在 Text 属性更改时从数据库中更新其 ItemsSource

我想ComboBox在表单上有一个控件,该表单将用于在用户键入时搜索投资列表。如果我在启动时缓存数据库中的整个投资集合(目前大约 3,000 个项目),我可以轻松地做到这一点,但如果没有必要,我宁愿不这样做。

我试图实现的行为是:

  • 用户在可编辑的 ComboBox 中键入文本。
  • 当用户输入每个字符时,就会触发数据库搜索功能,每次连续击键都会缩小搜索结果的范围。
  • 随着搜索结果的更新,下拉面板将打开并显示相关匹配项

我尝试将 的Text属性绑定ComboBox到 my 上的InvestmentName(字符串)属性ViewModel,并将 的ItemsSource属性绑定到 myComboBox上的InvestmentList(通用列表)属性ViewModel。当我这样做时,Text属性会从 自动完成ItemsSource,但下拉列表显示为空。

我已经能够使用TextBox堆叠在 a上来实现这些结果ListBox,但它不是很优雅,而且它占用了更多的屏幕空间。我还能够让它与TextBox堆叠在 a 顶部一起使用ComboBox,尽管当存在有效搜索项ComboBox时属性设置为“true”时,它会窃取焦点。IsDropDownOpen为此使用两个控件在视觉上也不是很令人愉悦。

我觉得我真的很接近让它按照我想要的方式工作,但有些事情让我无法理解。

此控件的 XAML 是:

相关ViewModel属性为:

我已经对此进行了相当多的研究,但我还没有找到答案。

0 投票
2 回答
1149 浏览

wpf - 将 MVVM 应用于填充有 UserControls 的 ItemsControl

当我用我当前的应用程序解决越来越多的与 MVVM 相关的问题时,更多的问题不断涌现。:)

我试图替换的当前实现涉及一个 StackPanel,其子代或多或少是动态生成的(通过查看配置文件)。每个孩子都是 UserControl 的一个实例。之前,我所做的是为 StackPanel 分配一个名称,然后在 Window_Loaded 事件处理程序中,我只需确定必要的子级数量,为每个子级实例化一个 UserControl,并为 UserControl 分配一个 ID,这样我就知道了单击特定 UserControl 实例的按钮的正确来源;每个 UserControl 上有 3 个按钮。

所以我知道我想将 StackPanel 绑定到一个集合。这当然是不可能的,因为我需要使用从 ItemsControl 派生的东西,例如 ListBox 或 ListView(甚至是 ItemsControl 本身)。为了在 MVVM-ifying 的第一次迭代中保持简单,我将只使用一个 ListBox。

现在的问题是,我在代码隐藏中的 ObservableCollection 是否应该是 ObservableCollection?我相信这意味着无论我如何对我的 GUI 进行皮肤处理,这个 ListBox 将始终具有子项,无论它们在 MyUserControl 的 XAML 文件中的外观如何。我也希望它是可定制的,但我认为这意味着我也必须将 MVVM 模式应用于 UserControl。

0 投票
1 回答
1864 浏览

c# - WPF:将 ItemsSource 绑定到目录

我正在尝试做我的第一个 WPF 项目,并且我已经开始使用这个示例项目来显示图像。其中一部分是将列表框绑定到图像数组的 XAML:

现在很好,但我想将它绑定到子文件夹中的所有图像,并且它是匹配模式的子文件夹。我的目录结构是这样的:

我想将列表框绑定到各种 Index.jpg 图像。

我通常的方法是使用 System.IO 和 Directory.GetFiles 做一些 CodeBehind,但由于 XAML 看起来相当强大,我只是想知道:这种类型的绑定可以完全在 XAML 中实现吗?

如前所述,WPF 的初学者,我想以“正确”的方式来做,这似乎是 DataBinding。

0 投票
2 回答
1022 浏览

wpf - wpf ComboBox上的ItemsSource被重置?

ComboBox在 xaml 中有一个设置并设置了ItemsSource绑定。当我运行项目时,ComboBox. 如果我用 snoop 检查它,则它ItemsSourceComboBox空白的。

有人遇到过这个吗?

我检查了绑定错误这是它显示的错误

System.Windows.Data Error: 39 : BindingExpression path error: 'WasteTypeData' property not found on 'object' ''JobItems' (HashCode=28494546)'. BindingExpression:Path=WasteTypeData; DataItem='JobItems' (HashCode=28494546); target element is 'ComboBox' (Name='CboWasteTypes'); target property is 'ItemsSource' (type 'IEnumerable')

WasteTypeData是 的公共财产ObservableCollection<WasteTypes>

这是我设置为绑定的内容ComboBox,如果我调试应用程序,则会按预期WasteTypeData填充列表。WasteTypes

WasteTypeData我不知道为什么它在 object上寻找JobItemsWasteTypeData在对象上找不到该属性JobItems

JobItemsData是 的公共财产ObservableCollection<JobItems>

我的 xaml 有一个ListBoxBindingItemsSource设置为JobItemsData.

ListBoxaDataTemplate和几个TextBoxes 和一个ComboBox。所有的TextBoxes都正确显示了他们的数据。

如果它有助于阐明正在发生的事情,这是 xaml:

谢谢保罗

0 投票
2 回答
20715 浏览

c# - WPF:在 XAML 与代码隐藏中设置 ItemSource

由于这是 WPF,它可能看起来像很多代码,但不要害怕,问题很简单!

我有以下 XAML:

我有这个代码隐藏:

如果我将该语句Hello.ItemSource = AllRoles注释掉,网格将显示nothing。当我把它放回去时,它会显示正确的东西。为什么是这样?

0 投票
1 回答
2223 浏览

wpf - WPF ComboBox 一种更好的格式化 ItemsSource 的方法

早安伙计们,

我有几个 ComboBoxes 绑定到 TimeSpan 列表。我正在使用 IValueConverter 和 ItemTemplate 格式化 TimeSpan。我想知道是否有更简单的方法来格式化 TimeSpan。这是我目前正在做的事情。

0 投票
1 回答
1469 浏览

c# - 不断更新 ListView 的 ItemsSource?

我有一个 ListView,我将其设置为 ItemsSource 以列出所有分配(我的 SQL 数据库中的一个表,ORM 是 LINQ to SQL),如下所示:

(这段代码恰好在 InitializeCompenent() 被调用之后)而且为了它,我添加了一个示例:

(其中 _repo 是我的存储库,因为我正在使用存储库模式)当我在设置 ListView 的 ItemsSource 之前放置这段代码时,示例显示。但是,当在 ItemsSource 设置后的任何地方有这段代码时,示例不会显示。每次添加作业时,如何不断更新 ItemsSource?
我的 IRepository:

0 投票
1 回答
1787 浏览

wpf - WPF Grid/WrapPanel AutoSize 动画

我在 WPF 中有以下布局

使用 MVVM 并绑定列表框 itemsource。我在网格中使用 wrapPanel,并且禁用了滚动,因此网格行高将根据列表框内容增长和缩小。这一切都很好。

我想要的是能够为列表框(或包含它的边框,或具有自动高度的网格行)的增长和收缩设置动画。我应该使用什么元素 - 边框上的 SizeChanged 触发器?

此外,当我的 ItemsSource 更改时,我希望我的列表框项目淡出,然后调整大小,然后新项目淡入。

非常感谢任何帮助。谢谢,克里斯