问题标签 [datagridcell]
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.
wpf - 具有验证错误样式的 WPF Datagrid 单元格
当出现验证错误时,我正在尝试更改 DataGridCell 的默认样式(在 WPF Toolkit DataGrid 中)。默认为红色边框。如何放置自己的模板?
谢谢。
wpf - 从 DataGridTextColumn 继承并覆盖 GenerateElement
我正在尝试创建一个自定义 DataGrid,我可以在其中根据单元格值格式化单个单元格(即;负值的红色文本,正值的绿色文本)ala 这种方法......
如何在 WPFToolkit DataGrid 中获取当前单元格的绑定值
我还需要将值从负数转换为带括号的值(即 -2.34 到 (2.34))。我有继承/覆盖工作。我的问题是,如何访问被覆盖的 GenerateElement 方法中的单元格中的值。
在此先感谢,菲尔
wpf - DataGridCells之间的访问控制,动态级联ComboBoxes
我有一个 DataGrid,它的两列是 ComboBoxes(一个包含很少,但不是这个问题)。
我希望,当用户更改第一个 Combo 的值时,另一列中的 ComboBox 应该绑定到它的属性(此属性是一个集合)。假设第一个 ComboBox 是类别,我希望当用户更改其值时,另一个 CB 填充(第一个组合的选定类别).Vendors 的值。
我该怎么做,我不使用MVVM,只是简单的WPF。我不知道什么应该是正确的实施方式,我希望我开始正确。
我认为,如果我可以从第一个的 SelectionChangeHandler 中获得另一个 ComboBox(位于不同的 DataGridCell 中),那将是最好的,因为这样我就可以在第一个的每次选择更改时重置其源。请注意,我有能力到达当前(第一个)DataGridCell,我只是在寻找一种有效的方法来访问正确的 DataGridCell 兄弟,然后获取它的子(第二个)组合。
另请注意,所选类别应因行而异,第二个 ComboBox 应取决于该行的类别。
我实际上尝试实现它,以便将 CollectionViewSource.Source 绑定到当前项目(即行的 DataContext),但它似乎不起作用。
我更喜欢通过第一个 ComboBox 的 SelectionChange 处的操作触发器或处理程序来设置第二个组合的 CollectionViewSource (VendorsCollection)。
该字段中的其他 ComboBoxes 似乎没有问题,因为它们都相互绑定,我可能会使用 CollectionViewSource.Filter,无论如何访问它们不是问题,因为它们是简单的兄弟姐妹,不像第一个这是位于另一个 DataGridCell 深处的远亲。
这是我到目前为止所尝试的:
wpf - 从另一个 DataGridCell 访问 DataGridCell 的子级?
我有一个包含 ComboBox 的 DataGridCell。
我希望,当我触发它的“SelectionChanged”事件时,不同列的 CollectionViewSource(最终 - 在运行时,单元格)CellEditingTemplate 的资源应该根据该行的选定值填充数据。
也许是 DataTrigger、ActionTrigger、EventTrigger,也许是代码,XAML 我不在乎,我只需要一个解决方案。
非常感谢!
c# - WPF DataGrid 绑定 DataGridCell 内容
希望这将是一个非常简单的答案,我只是没有看到我认为的树木的众所周知的木材。
我有一个 DataGridCell 样式,我想将单元格的内容绑定到图像的源属性,这是我目前使用的 XAML:
请注意,目前我正在将图像源绑定到内容.. 这不起作用,我也尝试了值,但不起作用!
所以我的问题是,简单明了.. 将单元格的内容放入此图像的源属性的正确绑定是什么?
提前致谢!
皮特
wpf - 将单元格对象的属性绑定到 WPF DataGrid 中的 DataGridCell
使用 WPF DataGrid,我需要根据单元格对象属性的相关值更改 DataGridCell 的各种显示和相关属性,例如 Foreground、FontStyle、IsEnabled 等。
现在这在代码中很容易做到,例如(使用 ObservableDictionaries 的 Observable 集合):
并且工作正常,但是我看不到如何在 XAML 中执行此操作,因为我找不到将路径设置为单元格对象属性的方法。
一种 XAML 尝试是:
但没有绑定到IsLocked属性
请注意,以前的版本返回row[col].IsLocked并使用 DataTrigger 设置 FontStyle,但返回的对象不是数据绑定的。
当然,请注意,应用程序在设计时不知道列是什么。
最后,DataTable 对我的要求来说效率太低了,但我很想看看如何用 DataTables 来完成,如果有这样的解决方案,这可能在其他地方有用(尽管我更喜欢使用集合)。
当然这是一个常见问题,我是一个 WPF 新手,试图在我的项目中使用所有 MVVM,但是这个问题阻碍了我使用 WPF DataGrid。
wpf - WPF - 如何从 DataGridRow 中获取单元格?
我有一个具有交替行背景颜色的数据绑定 DataGrid。我想根据单元格包含的数据对单元格进行不同的着色。我已经尝试过这个线程建议的解决方案
http://wpf.codeplex.com/Thread/View.aspx?ThreadId=51143
但,
DataGridCellsPresenter 演示者 = GetVisualChild(row)
总是返回 null。
我在用
但是 DataGridRow 的 VisualTreeHelper.GetChildrenCount() 总是返回 0。我已经验证 DataGridRow 不为空并且已经填充了数据。任何帮助表示赞赏。
谢谢。
wpf - 如何使 WPF DataGridCell 只读?
我了解您可以将整个 DataGrid 或整个列设为仅就绪 (IsReadOnly = true)。但是,在单元级别,此属性仅准备就绪。但我确实需要这种粒度级别。在过去 DataGrid 是公共领域时,有一篇关于通过更改源代码将 IsReadOnly 添加到一行的博客,但现在我没有 DataGrid 的源代码。有什么解决方法?
禁用单元格(IsEnabled=false)几乎可以满足我的需要。但问题是您甚至无法单击禁用的单元格来选择行(我有全行选择模式)。
编辑:由于没有人回答这个问题,所以我想这不是一个容易解决的问题。这是一个可能的解决方法:使单元格不可编辑。唯一的问题是单击单元格不会选择行。我刚刚注意到,当单击禁用的单元格时,仍会触发 DataGrid 的 MouseDown 或 MouseUp 事件。在这个事件处理程序中,如果我能找出它单击的行,我可以以编程方式选择该行。但是,我不知道如何从DataGrid.InputHitTest
. 有人可以给我一些提示吗?
wpf - 在某些 DatGrid 单元格 WPF 上禁用上下文菜单
我已经定义了一个这样的数据网格::
当右键单击完成时,这会在每个单元格上显示 contextMenu。
我想禁用除标题之外的所有单元格的上下文菜单以及某些条件的标题。(我不想使用 DataGridHeaderStyle 因为我不想在这里解释的其他一些问题。)
我在数据网格上为 PreviewMouseRightButtonDown 定义了一个处理程序,并且在处理程序中我试图做这样的事情::
我想知道我哪里错了!!请帮助我解决这个问题。如果我以错误的方式实现我的要求,也指导我以更好的方式做事:)
wpf - WPF DataGrid 单元格文本换行 - 设置为 NoWrap (False)
如何将 WPF DataGrid 中每个单元格的 TextWrapping 设置为“NoWrap”?我了解单元格本身没有“TextWrapping”属性,但我想在单元格内的控件上设置该属性。
我正在使用的 DataGrid 没有明确定义的列,它显示的结果集是动态的。
我正在寻找类似于以下链接中提供的答案的解决方案。但是我不想显式覆盖单元格样式/模板并定义要使用的控件。相反,我想说,如果正在使用 TextBlock,请将其 TextWrapping 属性设置为 NoWrap。