Tag: datagrid

WPF MultiDataTrigger AND条件

我想只在我的两个数据网格都选择了项目时才启用按钮。 现在,当任一数据网格都有选择时,它就会启用。 有任何想法吗?

如何挂起DataTable通知或数据绑定以防止UI更新

我得到了一个数据连接到DataTable的DataGrid(Infragistic UltraGrid)。 我想在用户单击按钮之前更新DataTable而不显示数据网格上的任何更改。 我已经尝试了以下方法来暂停网格udpate,但它们都不起作用。 可能我真的不明白数据绑定是如何工作的。 ultraGrid.BeginUpdate() – 这是特定于ultraGrid的方法,可以阻止绘制网格。 适用于Aero主题,但如果您在窗口上使用“经典”主题,则网格不会自绘制,因为绘画已暂停。 BindingSource.SuspendBinding() – 这只是暂停UI更改到底层源,而不是其他方面 BindingSource.RaiseListChangedEvent = false – 尝试将其设置为false,但网格仍然自行更新。 Grid.BindingContext = new BindingContext() – 试图查看是否可以删除任何底层绑定以防止网格上的更新。 这根本不起作用,不知道如何使用它 其他想法: ultraGrid.SetDataBinding(null, null) – 它基本上删除了网格上不是我想要的所有信息。 创建快照并覆盖网格 – 这实际上是一个黑客,这是其他人建议的。 我试图避免做这样的黑客攻击。 请注意,在网格更新期间,用户无法访问网格,因为打开了模态窗口。 用户通过此模式窗口更新数据表。 我们的想法是,当用户单击“确定”按钮时,他们将看到网格中的更改。 谢谢

WPF工具包DataGridCell样式DataTrigger

我试图在DataGrid中更新值时将单元格的颜色更改为黄色。 我的XAML: 网格绑定到数组列表(显示类似于excel的值表)。 数组中的每个值都是一个包含IsDirty依赖项属性的自定义对象。 更改值时,将设置IsDirty属性。 当我运行这个: 更改第1列中的值=整行变为黄色 更改任何其他列中的值=没有任何反应 我只希望改变的单元格变成黄色,无论它在哪一列。你看到我的XAML有什么问题吗?

C#WPF DataGrid不显示SQLite 3数据库中的小数

我遇到了C#WPF的问题,我想在WPF DataGrid控件中显示一些SQLite数据表。 我们将产品的价格存储为NUMERIC(但也尝试为REAL,但它完全相同),但在datagrid控件中它显示为整数,尽管在SQLite数据库浏览器中它显示正确的十进制值。 以下是我们将数据填入DataGrid的代码: ProductsDataGrid.ItemsSource = db.GetDataSet(“*”, “products”).Tables[0].AsDataView(); 并且GetDataSet方法如下所示: public DataSet GetDataSet(string columns, string table, string trailingCommands = “”) { var sqlcmd = string.Format(“select {0} from {1} {2}”, columns, table, trailingCommands); Utility.Log.Info(sqlcmd); DataSet dataSet = new DataSet(); SQLiteDataAdapter dataAdapter = new SQLiteDataAdapter(sqlcmd, this.dbconn); dataAdapter.Fill(dataSet); return dataSet; } 简短版本:程序在SQLite DB的数据网格中将十进制数显示为int

TextBlock文本不在DataGridCell中垂直居中

我在C#中创建一个DataGrid (来自代码隐藏/不是XAML),但无论我尝试什么,我都无法使文本在数据单元格中垂直居中: 我开始时: var CellStyle = new Style(typeof(DataGridCell)) { Setters = { new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center) } }; 哪个正确地定位单元格并使文本水平居中(根据上面的屏幕截图)。 尝试垂直居中文本,我知道TextBlock不支持垂直内容对齐,只支持父元素中自己的垂直对齐。 根据这个问题( WPF TextBlock中的文本垂直对齐 )我试图使用Padding伪造它: var CellStyle = new Style(typeof(DataGridCell)) { Setters = { new Setter(TextBlock.PaddingProperty, new Thickness(5)), new Setter(TextBlock.TextAlignmentProperty, TextAlignment.Center) } }; 这没有任何区别。 然后我尝试了这个: var CellStyle = new Style(typeof(DataGridCell)) { Setters = { new Setter(DataGridCell.VerticalContentAlignmentProperty, VerticalAlignment.Center), […]

在WPF Datagrid中设置第一行样式

我想在WPF Datagrid中更改第一行(仅)的样式,但还没有找到如何执行它。 我想知道创建一个触发器,如下所示: 但是当然这不起作用,因为DataGridRow上没有’SelectedIndex’属性。 我在我的代码背后也尝试过这样做,但无法让它工作。 看起来似乎很简单,但我没有管理它,所以任何建议都会受到最高的赞赏。 谢谢,威尔

在两个DataGrids之间共享1个滚动条

我正在制作一个有2个数据网格的wpf应用程序,我想让它们一起滚动。 我知道DataGridView类有一个滚动事件,您可以使用它对其他网格进行必要的更改,但DataGrids没有Scroll事件。 我必须使用DataGrid。 这个例子很好,但不是WPF,而是使用DataGridView而不是DataGrid。 使用一个滚动条来控制两个DataGridView 拥有它的最佳方法是什么,以便一个数据网格的滚动条也将移动WPF和DataGrids中的数据网格滚动条?

wpf datagrid自定义(边框,单元格边角等)

我正在尝试在xaml中设置一个wpf数据网格,使其看起来像这个图像 。 那可能吗? 我尝试了很多东西,但我仍然有以下问题: 单元格边框属性仅影响选定的单元格 否则我只有1px细线可以通过VerticalGridLinesBrush着色 如果我在datagrid.cell级别指定背景颜色,它会覆盖选择 我不知道是否可能在单元级别(也用于选择)上的圆边 我很感激四个人的帮助。 如果有帮助我明天可以在这里发布几次尝试。 编辑:这是生成数据网格的代码,您可以看到我在datagrid.cellstyle中尝试了背景和边距值,但是它导致了上述问题: <!– –> <!– –>

WPF DataGrid中自定义的StringFormat

在DataGrid中设置列的自定义格式的最有效方法是什么? 我不能使用以下StringFormat,因为我复杂的格式也依赖于此ViewModel的某些其他属性。 (例如,价格格式有一些基于不同市场的复杂格式逻辑。) Binding =”{Binding Price, StringFormat='{}{0:#,##0.0##}’}”

在WPF DataGrid的单个单元格上设置删除线的最佳方法是什么?

在WPF DataGrid的单个单元格上将字体设置为删除线样式的最佳(简单)方法是什么? … 我所知道的选项是在单个单元格中插入TextBlock控件或使用DataGridTemplateColumn – 并在其中使用TextDecorations属性。 无论哪种方式,这都是一项使命,我想使用DataGrid的默认AutoGenerate Columns函数,特别是因为我的ItemsSource是一个DataTable。 除了之外,有没有办法访问使用默认DataGridTextColumn生成的TextBlock?