Tag: datagrid

wpf mvvm在datagrid中显示可观察的集合

我需要在DataGrid显示对象的所有信息 ItemsCollectionA , ItemsCollectionB和ItemsCollectionC都是ObservableCollections 。 我有一个datagrid: 这将以网格格式显示所有属性,但ItemsCollectionB和ItemsCollectionC显示为(集合)。 如何让ItemsCollectionB和ItemsCollectionC向下扩展网格并向外展示它们的属性

覆盖回车键,但保持wpf数据网格中其他键的默认行为

让我感到困扰的是,按下数据网格中的回车键会将选择项向下移动一个项目,我希望能够在正常的keydown事件中决定它的作用。 所以我所做的是创建一个新类,它inheritanceDataGrid并覆盖OnKeyDown事件并将其用作我的datagrid。 这会产生一系列全新的问题,因为我显然必须重写所有其他按键(箭头键导航,shift +箭头键选择,pgup / pgdn等等)。 我一直试图破解它,但只是花了很多时间来重写已经写好的东西并且可能比我想出的更好。 那么如何在不弄乱datagrid的其他默认键绑定的情况下让enter键执行我想要的操作呢? 提前致谢

Datagrid:如何获取SelectedItem的CurrentCell?

在WPF datagrid的代码背后,如何从我的dataGrid.SelectedItem(In Code)中获取currentCell? 非常感谢,

将行添加到WPF数据网格中,直到运行时才知道列

我正在尝试向数据网格添加数据(事实上,任何在网格中显示数据的控件都会这样做),但是直到运行时才会知道列(名称和数字)。 我知道如何创建的列:例如 DataGridTextColumn textColumn = new DataGridTextColumn(); textColumn.Header = column.DisplayName; MyDataGrid.Columns.Add(textColumn); 但是我该如何添加行? 我没有看到如何使用绑定,因为我的数据不包含在具有已知属性的对象中。 例如,每行的数据可能以字符串[]的forms出现。 所以有一次我可能有三列,另一次我可能有五列。 我当时希望能够做到这样的事情: // Example data to represent a single row. string[] row1 = new[] { “value1”, “value2”, “value3” }; var row = new Row; row.AddCell(row1[0]); row.AddCell(row1[1]); row.AddCell(row1[2]); MyDataGrid.Rows.Add(row);

WPF DataGrid – 如何在添加新行时将注意力集中在DataGrid的底部?

我正在使用WPF工具包中的 DataGrid ,我需要能够将焦点保持在网格的底部(即最后一行)。 我现在遇到的问题是,在添加行时, DataGrid的滚动条不会随着要添加的新行一起滚动。 实现这一目标的最佳方法是什么?

带MVVM的WPF数据网格

我正在尝试将WPF中的数据网格绑定到我的ViewModel,以便它将更新对数据库的任何单元格更改,并允许用户删除行并添加新行。 我有部分工作,但无法找到ADD的ELEGANT解决方案并进行修改。 这是xaml 然后在我的视图模型方法中 private ObservableCollection getAllItems() { using (var context = new InspectorGeneralEntities()) { var query = from I in context.ItemsLists select I; var item = new ObservableCollection(query.ToList()); return item; } } 删除行或修改数据网格上的行不会流入数据库。 a)我需要在xaml代码中创建哪些其他绑定来检测这些事件 b)如何在视图模型中检测已删除的记录或已修改的项目,以便我可以更新datacontext(如果它不会自动更新)。

单击单个单元格时,如何突出显示整个DataGrid行?

我有一个DataGrid定义如下。 单击DataGrid中的单元格时,仅突出显示单元格。 如何更改它以便在单击单元格时突出显示整行?

如何在代码中定义DataTemplate?

如何在代码中创建DataTemplate (使用C#),然后向该DataTemplate添加控件? 我正在使用Sivlerlight。

通过C#代码创建DataGridTemplateColumn

我有一个我创建的动态Datagrid。 我通过后面的代码为它创建每一列。 我在列上遇到麻烦,我希望在不编辑时显示在文本块中,而是在编辑时作为combobox显示。 我有一个ObservableCollection of Transactions。 每个交易都有一个名为“账户”的类型。 这是我到目前为止: private DataGridTemplateColumn GetAccountColumn() { // Create The Column DataGridTemplateColumn accountColumn = new DataGridTemplateColumn(); accountColumn.Header = “Account”; Binding bind = new Binding(“Account”); bind.Mode = BindingMode.TwoWay; // Create the TextBlock FrameworkElementFactory textFactory = new FrameworkElementFactory(typeof(TextBlock)); textFactory.SetBinding(TextBlock.TextProperty, bind); DataTemplate textTemplate = new DataTemplate(); textTemplate.VisualTree = textFactory; // Create the ComboBox […]

SilverLight DataGrid:复制和粘贴

有没有办法可以从SilverLight DataGrid中选择一堆行或单元格并将它们复制粘贴到例如excel中? DataGrid似乎没有内置此function! 非常感谢