问题标签 [datagridcolumn]
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.
c# - Unable to get ItemsSource working dynamically for DataGridComboBoxColumn
I am trying to bind the ItemsSource
property of my DataGridComboBoxColumn
to a property of my ViewModel. I understand that due to some limitations this is not possible without using a static list of some sort or a workaround.
I chose to go the workaround route. I tried every answer on this StackOverflow thread with no luck, and most recently I tried this workaround with no luck either.
Here is my XAML as per my last attempt:
I have also tried adjusting the ItemsSource
binding as per this thread with no luck.
Here is my ViewModel property in case it helps:
All I am getting is an empty list of values. If I put a breakpoint on the property getter it never breaks, i.e. it seems like the XAML isn't finding the ActionSource
binding. Any help or guidance on why this might not be working would be greatly appreciated.
Edit - Updated XAML:
Debugging Error:
System.Windows.Data Error: 4 : Cannot find source for binding with reference RelativeSource FindAncestor, AncestorType='System.Windows.Window', AncestorLevel='1''. BindingExpression:Path=DataContext.ActionSource; DataItem=null; target element is 'TextBlockComboBox' (Name=''); target property is 'ItemsSource' (type 'IEnumerable')`
c# - 将 DataTemplate 绑定到 DataGridColumn CellTemplate
我正在尝试在代码中设置 DatePicker DataGrid 列。此列与不同的 DataGrids 一起使用,每个 DataGrids 显示不同类型的对象。从这篇文章中,我想出了以下代码,它可以正常工作:
但是,由于以编程方式创建模板的方法已FrameworkElementFactory
被弃用,因此我认为我最好寻找另一种方法。
作为替代方案,我考虑创建一组 DataTemplates 作为资源,然后在代码中应用它们。到目前为止,这是我必须要做的,但我不确定如何设置绑定。这是我的 DatePicker 模板:
这是新GetDataGridColumn
方法:
这种新方法似乎是一种更优雅的解决方案,因为现在 DatePicker 列的 UI 设计是在 XAML 中定义的,并且只能使用代码应用。但是,现在我的 DatePicker 列只显示开始日期。该fieldName
方法中的参数可以是“StartDate”或“EndDate”或在数据网格中显示的对象中定义的任何其他 DateTime 变量。另外我不确定如何将 DatePickerIsEnabled
属性设置为 isReadOnly 的值。
如果您认为这不是最好的方法,请告诉我。
谢谢。
c# - WPF DataGridColumn 可见性
当我们需要通过某种条件隐藏 DataGrid 的列时,我们都遇到了问题。至少有两种方法可以解决这个问题。两种方法都需要代理元素。我使用这两种方法。如您所见,使用 ofFreezableProxy
作为代理元素不需要ContentControl
,但需要指定附加类 ( FreezableProxy
)。使用 ofFrameworkElement
作为代理不需要指定额外的类(如FreezableProxy
),但需要添加ContentControl
到标记。
XAML:
代码隐藏:
两种方法看起来非常相似。建议我们使用第二种方法(使用FrameworkElement
)。ContentControl
然后我有一个问题 -如果Binding
实际设置为,为什么我需要指定附加{StaticResource FrameworkElement}
?魔术在ContentControl
做什么?当我们使用时,FrezableProxy
我们不需要指定任何ContentControl-s
或其他东西,它工作正常。
更新
为什么这不起作用?ContentControl 已注释,但我明确设置DataContext
了属性。FrameworkElement
extjs5 - Extjs 5锁定网格列
我想锁定网格的前几列,并为其余列提供水平滚动。我正在使用列标题分组。
我使用了 locked : true 属性并为这些列设置了静态宽度。然而什么都没有发生。我已经检查了所有可能的文档。不知道错误在哪里。有人可以帮我吗?
代码如下
查看.js'
控制器.js
c# - 如何将图像添加到 DataGridTemplateColumn 标题
我有一个带有一些 DataGridTemplateColumns 的 Datagrid。其中之一是成本(见下面的代码)。列标题是成本。现在我想要在标题成本右侧的图像。我怎样才能做到这一点?
actionscript-3 - DataGrid Image ItemRenderer --> 如何更改其他行的图像源,而不仅仅是选中的那一行
我的 DataGrid 中有一个图像。它的目的是播放和停止音频,所以我每次点击时都需要将图像源从“播放”图像更改为“停止”图像。
我已经用下一个代码实现了这一点:
但问题是我想更改 DataGridColumn 其他行的图像源。
例如,如果我单击某一行的播放图像,它会变为停止图像,直到这里一切正常。
如果现在我单击其他行的播放图像,它也会更改为停止图像,但上一行仍然保留有停止图像,并且我希望只有一个采场图像处于活动状态。
换句话说,我想给人的印象是只有一个音频正在播放。因此,只有其中一行可以带有“停止”图像,而其余行必须带有“播放”图像。
那么,我如何在每次单击项目渲染器时循环遍历 DataGridColumn 项目渲染器并更改其图像源?
wpf - 将列动态添加到数据网格或生成具有列表中特定列的数据网格
这几天我一直在苦苦挣扎datagrid
databinding
。。
我正在尝试从自定义对象中datagrid
动态生成。list
因为我需要显示的列表对象属性的数量可能会发生变化,所以我不知道确切的列数,也不知道它们的标题。
所以我想,我只动态添加我需要的列并为它们创建绑定(到特定的对象属性)。之后,我将根据绑定填充datagrid
来自 a 的数据。list
例如:
我创建一个空datagrid
我创建我的列表,以存储我的数据和数据对象:
现在,假设我只想显示Name
my 中的列datagrid
,所以我添加了一个具有特定绑定的列(大概这就是问题所在,但我无法弄清楚):
然后,我终于创建了一些数据并将其添加到我的列表中:
现在的结果是,整个列都填充了相同的数据。我的意图是只填写与确切list
项目相对应的行。例如,如果我稍后想将另一个项目添加到list
具有不同“名称”的项目中,则它也应显示datagrid
为具有不同“名称”的另一行。
extjs - ExtJS Grid 列,带有来自引用模型的 dataIndex
我有gridanel
一个viewmodel store
绑定到它的 ExtJS。该商店的模型是一个定义的模型,其中包含一个引用另一个模型的字段。
为了简单起见,这里有一个例子:
在我的gridpanel
我有 2 列。在一列中,dataIndex: 'date'
工作正常,显示日期。但是,在我的第二列中,我想显示用户名。我不知道该怎么做。user field
本身在对象上,因此声明不起作用dataIndex: user
。我试过dataIndex: {user.name}
了,但这也不起作用。我什至试过
也无济于事。我找到了一个使用renderer
列配置的解决方案,但是如果我必须手动遍历适当字段的数据结构,它真的很难看,并且比让模型引用另一个模型更重要。
TL;DR 我正在寻找一种方法来将列声明为模型dataIndex
中的字段reference
。
events - ExtJS 5.0 cellclick 事件返回不正确的列
我正在尝试在基于单击的某个列的网格上使用 cellclick,我想运行一些操作。但是每次,它都会返回一个错误的列,即如果我单击第 0 列(第一个列),它会返回下一列。