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

c# - C# WPF 数据网格:ItemsSource

我想知道一旦设置了 ItemsSource(它是在 XAML 中设置的),您如何修改 WPF 工具包数据网格的列的属性?例如,我想让特定列的属性 IsReadOnly 等于 true。

所以基本上有两件事我想知道:

- 设置 ItemsSource 后如何访问特定列?

- 设置 ItemsSource 后如何更改特定列的属性?

0 投票
1 回答
3401 浏览

wpf - WPF DataContext 与 ItemsSource 性能

假设我们有一个绑定到源的 ItemsControl。两者之间是否有任何性能差异

(在这两种情况下都正确绑定在 XAML 中)

0 投票
1 回答
877 浏览

.net - 空 ItemsSource 后奇怪的 XAML MenuItem DataBound ItemsSource 刷新问题

我有一个工作正常的 XAML MenuItem DataBound ItemsSource 但是有一个小问题。当我查看 MenuItem 并且没有数据绑定项时,ParentMenu 将被禁用并且它看起来很好,没有绑定错误(正如预期的那样,ItemsSource 是空的)。如果修改了 ObservableCollection 并添加了项,则绑定刷新并出现 MenuItem。但是,ItemContainerStyle 不会将 MenuItem.Tag 属性更新为数据绑定值。

只要 ItemsSource 从不以空开始或从不减少为空,MenuItem 就可以正常工作。有人对此类问题有任何提示吗?我想让 ItemsSource 和 ItemContainerStyle 始终正确刷新,即使 ItemsSource 开始为空

XAML 如下所示:

0 投票
1 回答
222 浏览

silverlight - 我有一些关于 Silverlight Enterprise 应用程序开发的性能相关问题

我有一些关于 SL Enterprise 应用程序开发的性能相关问题。

- 我们有 10.000 行绑定到 ItemsSource 控件。(数据绑定时总共 100.000+ UIElements)

Q1.如何在另一个线程中进行此绑定?因为 Silverlight 在绑定发生时卡住了。

Q2.您建议的任何其他方式来执行此操作,具有与我们在 ItemsControl 中相同的视觉灵活性。

-我们正在从服务器中提取总共 60MB(解压缩的二进制序列化 XML)数据,并让我们的 SL 用户使用它 20 分钟。

Q1.我们有一些内存泄漏并且很难弄清楚内存中的内容是什么?我们有工具来展示这一点吗?

根据我们最新的测试,UIElements 是填充内存的元素。我们有 5 个嵌套的 Items 控件,跟踪内部控件的许多“加载”事件,以便用计算填充适当的值。据我所知,虚拟化不适用于项目控制。

谢谢你所有的时间。

0 投票
1 回答
394 浏览

c# - 在 WPF 中,访问 ListBox 中的容器

我正在创建 aDerivedListBox : ListBox和 a DerivedHeaderedContentControl : HeaderedContentControl,它们将作为ListBox.

为了计算DerivedHeaderedContentControls 的扩展内容可用的大小,我将每个容器对象存储在DerivedListBox. 这样我可以计算每个标题的高度,DerivedHeaderedContentControl然后从可用的总大小中减去DerivedListBox. 这将是可用于 a 的扩展内容的大小DerivedHeaderedContentControl

DerivedListBox'sItemsSource被清除(或项目源中的项目被删除)时,问题就出现了。如何确定何时ItemsSource清除,以便我可以清除容器列表?

0 投票
6 回答
39508 浏览

c# - WPF DataGrid:DataGridComboxBox ItemsSource 绑定到集合的集合

情况:

我在 XAML 中创建了一个 DataGrid,并且 ItemsSource 绑定到某个包含属性的类的 ObservableCollection。然后在 C# 中,我创建了一个 DataGridTextColumn 和一个 DataGridComboBoxColumn 并将它们绑定到 ObservableCollection 内对象的属性。我可以将 DataGridComboBoxColumn 绑定到一个简单的 Collection,但我想做的是将它绑定到字符串集合的集合,以便 DataGrid 中的每一行 ComboBox 都有不同的字符串集合。我没有这样做...

问题:

如何绑定 DataGridCombBoxColumn 以便为此类列的每一行提供不同的字符串集合?

代码示例:

XAML:

C#:

任何帮助将不胜感激!

笔记:

好的,所以在阅读了两个第一个答案后,我注意到了一些事情。我的绑定真的不对!现在,我想做的是类似于 AndyG 提出的:

错误:“无法将类型‘System.Windows.Data.Binding’隐式转换为‘System.Collections.IEnumerable’。”

ItemsSource 如何绑定到 Data?

0 投票
2 回答
4943 浏览

c# - ListBox.ItemsSource 的显示属性

我是 WPF 的新手。我有一个 ListBox,它的 ItemSource 设置为WorkItemCollection的一个实例。(WorkItem对象的集合。)

显示列表时,它仅显示每个对象的类型 (Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem)。有没有办法让列表显示 WorkItem.Title?

0 投票
2 回答
1297 浏览

wpf - 在 Silverlight 中使用 UIElements 作为 ListBox 的 ItemsSource

我注意到,如果您有任何从SilverlightUIElement中的项目派生的东西,ListBox它会按原样呈现对象,并且不会关注DisplayMemberPath和/或的设置ListBox.ItemTemplate

例如,如果您有这样的 XAML:

在 Silverlight 中,这会产生一个ListBox类似这样的项目:

但是在 WPF 中(我认为这是正确的行为)它按预期列出了标签:

如果我使用不是从 UIElement 继承的对象,一切都会按预期工作:

产生:

有什么方法可以像在 Silverlight 中一样使用UIElements 和任何其他对象一样?ItemsSource还是我错过了什么?

0 投票
3 回答
1306 浏览

silverlight - Silverlight 3:使用 UserControls 列表作为 TreeView 的 ItemsSource

我想用 UserControls 填充 TreeView,但我只想显示 Name 属性,而不是整个 UserControl。当我向 myUCs 添加一些内容时,以下代码会给我带来奇怪的崩溃:

C#:

XAML:

有谁知道如何使用 UserControls 列表作为 TreeViews 的 ItemSource?

0 投票
1 回答
26133 浏览

wpf - IsSynchronizedWithCurrentItem 属性和当前项目更新

我有一个视图模型来管理对话框类型的视图,该视图允许过滤列表(如果需要)和选择项目。无论我是否将 IsSynchronizedWithCurrentItem 设置为 true,该代码都可以正常工作。我的理解是这个属性在 ListView 中默认不是真的,所以我想更好地理解这个属性。

这是视图的 xaml 中的绑定设置(在没有同步属性设置的情况下也可以正常工作):

视图模型 Projects 实际上是由私有 ObservableCollection 支持的 CollectionViewSource。我想我是从 Josh Smith 的一个示例项目中得出这个想法的,但老实说,我现在不记得了。这是与 xaml 绑定相关的 VM 的相关部分:

CollectionViewSource 的 Filter 属性有一个处理程序,它返回列表中视图模型项的各种谓词,这些谓词被绑定正确拾取。这是该代码的要点(在同一个 ProjectSelctionViewModel 中):

设置 Mode=TwoWay 是多余的,因为默认情况下 ListView 的 SelectedItem 绑定是两种方式,但我不介意明确说明(一旦我更好地理解 WPF,我可能会有不同的感觉)。

我的代码如何使 IsSynchronizedWithCurrentItem=True 变得多余?

我的直觉是,这是不错的代码,但我不喜欢它似乎是通过“魔法”工作的,这意味着我欢迎任何建设性的反馈!

干杯,
贝里尔