datagrid 相关问题

一个图形用户界面元素,用于显示数据的表格视图。

MUI DataGridPro useResizeContainer - 网格的父级具有空宽度

我恳求你帮助我,因为我已经寻找答案3天了,但我无法解决这个问题。 问题: MUI:useResizeContainer - 网格的父级具有空宽度。 你需要做...

回答 2 投票 0

使用 TemplateColumns 将 WPF DataGrid 绑定到 DataTable

我已经尝试了一切但一无所获,所以我希望有人能给我一个顿悟的时刻。 我根本无法获得成功提取数据网格中数据的绑定。 我有一个数据表,可以...

回答 3 投票 0

MUI Datagrid:行分组,详细信息显示在同一单元格中

我正在使用 datagrid mui 行分组。这是代码。 常量报告 = () => { const apiRef = useGridApiRef(); const initialState = useKeepGroupedColumnsHidden({ api参考, 初始状态...

回答 1 投票 0

将Cell中具有CustomClass的DataTable绑定到DataGrid WPF

我有数据网格。 我有数据网格。 <DataGrid ItemsSource="{Binding DataView}" x:Name="AttributeGrid" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" EnableColumnVirtualization="False" EnableRowVirtualization="False" DataContextChanged="AttributeGrid_DataContextChanged"> </DataGrid> 对于该 DataGrid 的单元格,我有自定义样式 <Style x:Key="DataGridDataViewCustomCellStyle" TargetType="{x:Type DataGridCell}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="DataGridCell"> <Grid> <ComboBox x:Name="ComboBoxCondition" IsEditable="True" ItemsSource="{Binding Values}" Visibility="Collapsed" SelectedValue="{Binding SelectedValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" SelectedValuePath="ValueID" DisplayMemberPath="ValueStr"/> <TextBox x:Name="TextBoxCondition" Text="{Binding TextValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsEnabled="True" Visibility="Collapsed"/> <DatePicker x:Name="DateCondition" Text="{Binding DateValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsEnabled="True" Visibility="Collapsed"/> </Grid> <ControlTemplate.Triggers> <DataTrigger Binding="{Binding ValueType}" Value="Text"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Visible"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Hidden"/> </DataTrigger> <DataTrigger Binding="{Binding ValueType}" Value="Combobox"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Visible"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Hidden"/> </DataTrigger> <DataTrigger Binding="{Binding ValueType}" Value="Date"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Visible"/> </DataTrigger> <DataTrigger Binding="{Binding IsModified, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Value="True"> <Setter Property="Background" TargetName="TextBoxCondition" Value="Cornsilk"/> <Setter Property="Background" TargetName="ComboBoxCondition" Value="Cornsilk"/> <Setter Property="Background" TargetName="DateCondition" Value="Cornsilk"/> </DataTrigger> <DataTrigger Binding="{Binding IsModified, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Value="False"> <Setter Property="Background" TargetName="TextBoxCondition" Value="White"/> <Setter Property="Background" TargetName="ComboBoxCondition" Value="White"/> <Setter Property="Background" TargetName="DateCondition" Value="White"/> </DataTrigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style> 如果 DataView 基于 List<object> gridAttributes = new List<AttributeItem>(); gridAttributes add some data ..... DataView = CollectionViewSource.GetDefaultView(gridAttributes); 一切都按预期进行。在 DataGridCell 中,我有 AttributeIem 对象,并且可以根据需要设置其样式。 但是,当 DataView 基于 DataTable 时,然后在 DataGridCell 中,由于某种原因我得到了 DataRowView,然后 Style 不起作用,一切都出错了。 RunDataTable.Rows.Clear(); RunDataTable.Columns.Clear(); RunDataTable.Columns.Add("SectionName"); RunDataTable.Columns.Add("RunName"); foreach (AttributeItem attr in gridAttributes) { RunDataTable.Columns.Add(attr.AttributeName, typeof(AttributeItem)); } DataRow row = RunDataTable.NewRow(); row["SectionName"] = section; row["RunName"] = name; foreach (AttributeItem item in gridAttributes) { row[item.AttributeName] = item; } RunDataTable.Rows.Add(row); DataView = new DataView(RunDataTable); 这是我收到的错误绑定列表 System.Windows.Data Error: 40 : BindingExpression path error: 'IsModified' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=IsModified; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'Values' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=Values; DataItem='DataRowView' (HashCode=47477033); target element is 'ComboBox' (Name=''); target property is 'ItemsSource' (type 'IEnumerable') System.Windows.Data Error: 40 : BindingExpression path error: 'SelectedValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=SelectedValue; DataItem='DataRowView' (HashCode=47477033); target element is 'ComboBox' (Name=''); target property is 'SelectedValue' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'TextValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=TextValue; DataItem='DataRowView' (HashCode=47477033); target element is 'TextBox' (Name=''); target property is 'Text' (type 'String') System.Windows.Data Error: 40 : BindingExpression path error: 'DateValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=DateValue; DataItem='DataRowView' (HashCode=47477033); target element is 'DatePicker' (Name=''); target property is 'Text' (type 'String') System.Windows.Data Error: 40 : BindingExpression path error: 'ValueType' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=ValueType; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'ValueType' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=ValueType; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'ValueType' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=ValueType; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'IsModified' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=IsModified; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'IsModified' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=IsModified; DataItem='DataRowView' (HashCode=47477033); target element is 'DataGridCell' (Name=''); target property is 'NoTarget' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'Values' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=Values; DataItem='DataRowView' (HashCode=47477033); target element is 'ComboBox' (Name=''); target property is 'ItemsSource' (type 'IEnumerable') System.Windows.Data Error: 40 : BindingExpression path error: 'SelectedValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=SelectedValue; DataItem='DataRowView' (HashCode=47477033); target element is 'ComboBox' (Name=''); target property is 'SelectedValue' (type 'Object') System.Windows.Data Error: 40 : BindingExpression path error: 'TextValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=TextValue; DataItem='DataRowView' (HashCode=47477033); target element is 'TextBox' (Name=''); target property is 'Text' (type 'String') System.Windows.Data Error: 40 : BindingExpression path error: 'DateValue' property not found on 'object' ''DataRowView' (HashCode=47477033)'. BindingExpression:Path=DateValue; DataItem='DataRowView' (HashCode=47477033); target element is 'DatePicker' (Name=''); target property is 'Text' (type 'String') 任何建议我如何调整我的样式或代码隐藏以使其正常工作。 谢谢。 我尝试了不同的数据源方式。但不幸的是每次我都会遇到同样的错误 添加列: public static void RefreshColumnsFromModel(this DataGrid datagrid, DataGridRuns gridModel) { var myResourceDictionary = new ResourceDictionary(); myResourceDictionary.Source = new Uri("/SomeSource;component/Resources/SomeSource.xaml", UriKind.RelativeOrAbsolute); datagrid.Columns.Clear(); foreach (ColumnWithFilter column in gridModel.Columns.OrderBy(c => c.Index)) { if (column.IsReadOnly) { datagrid.Columns.Add( new DataGridTextColumn() { Header = column.ColumnHeader, IsReadOnly = column.IsReadOnly, Binding = new Binding(column.ColumnBinding), CellStyle = myResourceDictionary["DataGridReadOnlyCellStyle"] as Style, HeaderTemplate = datagrid.Resources["HeaderTemplate"] as DataTemplate } ); } else { datagrid.Columns.Add( new DataGridTemplateColumn() { Header = column.ColumnHeader, IsReadOnly = column.IsReadOnly, //Binding = new Binding(column.ColumnBinding), //HeaderTemplate = myResourceDictionary["HeaderTemplate"] as DataTemplate HeaderTemplate = datagrid.Resources["HeaderTemplate"] as DataTemplate, CellStyle = myResourceDictionary["DataGridDataViewCustomCellStyle"] as Style } ); } } } DataGridRuns 代表 DataGrid 的模型,一些用于过滤和排序的自定义行为 public class DataGridRuns : BaseClass { private List<AttributeItem> gridAttributes = new List<AttributeItem>(); public ObservableCollection<AttributeItem> GridAttributes { get { return new ObservableCollection<AttributeItem>(gridAttributes); } set { gridAttributes = value.ToList(); RaisePropertyChanged(); } } public DataTable RunDataTable { get; set; } = new DataTable("RunData"); private DataView dataView = null; public DataView DataView { get { return dataView; } } private ColumnWithFilter selectedColumn = null; public ColumnWithFilter SelectedColumn { get { return selectedColumn; } set { selectedColumn = value; RaisePropertyChanged(); } } public Action RefreshColumns; private List<ColumnWithFilter> columns = new List<ColumnWithFilter>(); public ObservableCollection<ColumnWithFilter> Columns { get { return new ObservableCollection<ColumnWithFilter>(columns); } set { columns = value.ToList(); RaisePropertyChanged(); } } public DataGridRuns() { } private List<AttributeItem> CreateAttributesFromInfo(IList<AttributeInfo> _attributes) { List<AttributeItem> result = new List<AttributeItem>(); try { foreach (var attr in _attributes) { result.Add(new AttributeItem(attr)); } } catch (Exception ex) { } return result; } public void AddRun(string section, string name, IList<AttributeInfo> _attributes, bool template = false) { var attr = CreateAttributesFromInfo(_attributes); if (gridAttributes == null || gridAttributes.Count() == 0) { gridAttributes = new List<AttributeItem>(attr); CreateColumns(); } DataRow row = RunDataTable.NewRow(); row["SectionName"] = section; row["RunName"] = name; foreach (AttributeItem item in gridAttributes) { row[item.AttributeName] = item; } RunDataTable.Rows.Add(row); dataView = new DataView(RunDataTable); //dataView = CollectionViewSource.GetDefaultView(RunDataTable); } public void ClearData() { gridAttributes.Clear(); gridAttributes = new List<AttributeItem>(); } public void CreateColumns() { RunDataTable.Rows.Clear(); RunDataTable.Columns.Clear(); columns = new List<ColumnWithFilter>(); ColumnWithFilter col = null; col = new ColumnWithFilter("Section Name", nameof(AttributeItem.SectionName)) { Index = 0, IsReadOnly = true, }; columns.Add(col); RunDataTable.Columns.Add("SectionName"); col = new ColumnWithFilter("Run Name", nameof(AttributeItem.RunName)) { Index = 1, IsReadOnly = true, }; columns.Add(col); RunDataTable.Columns.Add("RunName"); int colIndex = 1; foreach (AttributeItem attr in gridAttributes) { col = new ColumnWithFilter(attr.AttributeName, nameof(attr)) { Index = ++colIndex, IsReadOnly = false, }; columns.Add(col); RunDataTable.Columns.Add(attr.AttributeName, typeof(AttributeItem)); } } public void RefreshDataView() { foreach (DataRow item in RunDataTable.Rows) { item.ItemArray.ToList().ForEach(a => (a as AttributeItem)?.StartMarkingModifications()); } RaisePropertyChanged(nameof(DataView)); } public void RefreshPopupContent(string header = "") { selectedColumn = columns.Where(c => c.ColumnHeader.Equals(header)).FirstOrDefault(); if (selectedColumn == null) return; selectedColumn.RefreshFilterValues(gridAttributes .Where(a => !string.IsNullOrEmpty((string)GetPropertyValue(a, selectedColumn.ColumnBinding))) .Select(a => (string)GetPropertyValue(a, selectedColumn.ColumnBinding)).Distinct().ToList()); RaisePropertyChanged(nameof(SelectedColumn)); } public void Filtering() { UpdateDataViewRowFilter(); } private void UpdateDataViewRowFilter() { string rowFilter = string.Empty; foreach (ColumnWithFilter column in columns.Where(c => c.FilterIndex > 0)) { string andStr = !string.IsNullOrEmpty(rowFilter) ? " AND " : ""; switch (column.FilterIndex) { case 1: rowFilter += andStr + $"{column.ColumnBinding} IS NULL"; break; default: rowFilter += andStr + $"{column.ColumnBinding} = '{column.FilteredValue}'"; //filterResult = ((string)GetPropertyValue(attribute, column.ColumnBinding)).Equals(column.FilteredValue); break; } } (dataView as DataView).RowFilter = rowFilter; } public object GetPropertyValue(object obj, string propertyName) { return obj.GetType().GetProperty(propertyName)?.GetValue(obj, null); } } 这是我在 DataTable 中看到的,我希望在 DataGrid 中也能看到同样的结果 DataTable Visualizer 的屏幕截图 添加这是我在 UI 中看到的 具有列过滤的自定义网格 我不确定我是否正确理解了您的所有代码。我会根据我能理解的提供一个解决方案。 在数据表单元格中,您的类型为“AttributeItem”。具有路径“column.ColumnBinding”的绑定将从相应的单元格返回该类型的实例。 ValueType 和 IsModified 属性(在 ControlTemplate 中使用)属于此实例。 在这种情况下,我认为您错误地使用了 DataGridCell 样式更改。相反,您需要为单元格的内容创建一个数据模板。 <DataTemplate x:Key="DataGridDataViewCustomCellDataTemplate"> <Grid> <ComboBox x:Name="ComboBoxCondition" IsEditable="True" ItemsSource="{Binding Values}" Visibility="Collapsed" SelectedValue="{Binding SelectedValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" SelectedValuePath="ValueID" DisplayMemberPath="ValueStr"/> <TextBox x:Name="TextBoxCondition" Text="{Binding TextValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsEnabled="True" Visibility="Collapsed"/> <DatePicker x:Name="DateCondition" Text="{Binding DateValue, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" IsEnabled="True" Visibility="Collapsed"/> </Grid> <DataTemplate.Triggers> <DataTrigger Binding="{Binding ValueType}" Value="Text"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Visible"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Hidden"/> </DataTrigger> <DataTrigger Binding="{Binding ValueType}" Value="Combobox"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Visible"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Hidden"/> </DataTrigger> <DataTrigger Binding="{Binding ValueType}" Value="Date"> <Setter Property="Visibility" TargetName="TextBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="ComboBoxCondition" Value="Hidden"/> <Setter Property="Visibility" TargetName="DateCondition" Value="Visible"/> </DataTrigger> <DataTrigger Binding="{Binding IsModified, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Value="True"> <Setter Property="Background" TargetName="TextBoxCondition" Value="Cornsilk"/> <Setter Property="Background" TargetName="ComboBoxCondition" Value="Cornsilk"/> <Setter Property="Background" TargetName="DateCondition" Value="Cornsilk"/> </DataTrigger> <DataTrigger Binding="{Binding IsModified, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" Value="False"> <Setter Property="Background" TargetName="TextBoxCondition" Value="White"/> <Setter Property="Background" TargetName="ComboBoxCondition" Value="White"/> <Setter Property="Background" TargetName="DateCondition" Value="White"/> </DataTrigger> </DataTemplate.Triggers> </DataTemplate> 在模板 DataGridTemplateColumn 中,您需要创建一个带有 ContentControl 的模板,该模板将接受 Content 属性中路径“column.ColumnBinding”的绑定以及上述 ContentTemplate 属性中的模板。 private const string templateString = @" <DataTemplate xmlns=""http://schemas.microsoft.com/winfx/2006/xaml/presentation""> <ContentControl Content=""{{Binding {0}}}"" ContentTemplate=""{{DynamicResource DataGridDataViewCustomCellDataTemplate}}""/> </DataTemplate> "; public static void RefreshColumnsFromModel(this DataGrid datagrid, DataGridRuns gridModel) { var myResourceDictionary = new ResourceDictionary(); myResourceDictionary.Source = new Uri("/SomeSource;component/Resources/SomeSource.xaml", UriKind.RelativeOrAbsolute); datagrid.Columns.Clear(); foreach (ColumnWithFilter column in gridModel.Columns.OrderBy(c => c.Index)) { if (column.IsReadOnly) { datagrid.Columns.Add( new DataGridTextColumn() { Header = column.ColumnHeader, IsReadOnly = column.IsReadOnly, Binding = new Binding(column.ColumnBinding), CellStyle = myResourceDictionary["DataGridReadOnlyCellStyle"] as Style, HeaderTemplate = datagrid.Resources["HeaderTemplate"] as DataTemplate } ); } else { string templateSource = string.Format(templateString, column.ColumnBinding); var template = XamlReader.Parse(templateSource); datagrid.Columns.Add( new DataGridTemplateColumn() { Header = column.ColumnHeader, IsReadOnly = column.IsReadOnly, //Binding = new Binding(column.ColumnBinding), //HeaderTemplate = myResourceDictionary["HeaderTemplate"] as DataTemplate HeaderTemplate = datagrid.Resources["HeaderTemplate"] as DataTemplate, CellStyle = myResourceDictionary["DataGridDataViewCustomCellStyle"] as Style } ); } } } 不幸的是,我无法测试这段代码。但如果您提供重现这些情况的最少代码,我可以进行测试并准备有保证的工作版本。

回答 1 投票 0

WPF DataGrid - RowDetails DataContext

背景 我有以下 DataGrid,其中有两列用于描述和状态。它们绑定到一个名为 RowViewModels 的 ObservableCollection ,它作为 ...

回答 1 投票 0

MUI datagrid v7:在 GridToolbarColumnsButton 中使用 sx 时出现问题

我尝试在 GridToolbarColumnsButton 中使用 sx 但我无法直接将 sx 与 GridToolbarColumnsButton 一起使用,所以我尝试了 slotProps 但它不起作用。请帮忙。 输入图像描述...

回答 1 投票 0

WPF Datagrid - 单击 DataGrid 中的空白时取消选择所选项目

默认行为是使用 CTRL+单击取消选择数据网格中的项目 我希望能够用鼠标单击(左键或右键)网格中的空白并让它取消选择任何选定的项目...

回答 6 投票 0

在 DataGrid 列中显示图像

我正在尝试在 DataGrid 列中的其他数据旁边显示图像。 我的模型看起来像这样: 公开课人物 { 公共字符串名称{获取;放; } 公共字符串地址{获取;放; ...

回答 6 投票 0

c# WPF MVVM Datagrid 按钮将 TextBlock 绑定到 DataContext

我在用户控件中有一个数据网格。 UserControl 连接到保存 DataGrid 数据的 ViewModel。在本例中,数据是联系人的数据。我想做“...

回答 1 投票 0

根据模型属性隐藏数据网格单元

拥有此型号: 公共类优化设置 { 公共布尔选择{获取;放; } 公共字符串设置名称 { get;放; } 公共 bool HasValue { 获取;放; } 公共双值...

回答 1 投票 0

如何使 WPF DataGrid 显示具有绑定和 DataTemplate 的 ViewModel 集合

我只是希望显示 DataGrid 内某种列表的内容。我目前正在尝试使用 ObservableCollection<> 和 DataGrid,但这可能会改变。我如何 DataTem...

回答 2 投票 0

React from Material ui 中这个长错误是什么?

编译有问题:X ./src/Pages/Crypto_transactions.js 中的错误 184:35-43 在“@material-ui/data-grid”中找不到导出“默认”(作为“DataGrid”导入)(可能导出:DATA_GRID_PROP...

回答 2 投票 0

Flutter Editable Widget 中如何在表格左侧显示保存图标

在下面的 flutter 小部件中,有一种方法可以在表格左侧显示“保存”图标。默认情况下,它显示在最右端。我想用它来表示认可...

回答 1 投票 0

MUI - 检查单元格在 `renderEditCell` 内是否可编辑

我有一个包含不同单元格类型的 MUI 数据网格。 我必须检查按用户权限编辑单元格的选项。我想在 renderEditCell 内执行此操作 - 仅在用户尝试编辑后,不想...

回答 1 投票 0

WPF DataGrid 文本被截断

我的 WPF 4.5 应用程序有一个小(但烦人)的视觉错误,其中 DataGrid 的单元格在加载时被切断: 屏幕截图的 Dropbox 链接 但是一旦你调整窗口大小(点击正方形但是......

回答 2 投票 0

如何在组件 DataGrid MUI 中完全禁用键盘使用

我有一个组件DataGrid MUI,我在其中使用editMode =“row” 我有一个组件DataGrid MUI,我在其中使用editMode =“row” <DataGrid rows = { rows } editMode = "row" rowModesModel = { rowModesModel } onRowModesModelChange = { handleRowModesModelChange } onRowEditStop = { handleRowEditStop } processRowUpdate = { processRowUpdate } /> 如何禁用键盘使用? 为了确保 Material-UI DataGrid 组件中完全禁用键盘使用,包括通过键盘插入,我们可以调整实现以更全面地处理键盘事件。 import React from 'react'; import { DataGrid } from '@mui/x-data-grid'; const rows = [ { id: 1, lastName: 'Snow', firstName: 'Jon', age: 35 }, { id: 2, lastName: 'Lannister', firstName: 'Cersei', age: 42 }, { id: 3, lastName: 'Lannister', firstName: 'Jaime', age: 45 }, ]; const columns = [ { field: 'id', headerName: 'ID', width: 90 }, { field: 'firstName', headerName: 'First name', width: 150 }, { field: 'lastName', headerName: 'Last name', width: 150 }, { field: 'age', headerName: 'Age', type: 'number', width: 90 }, ]; function handleCellNavigation(event) { if (event.key.startsWith('Arrow')) { event.stopPropagation(); event.preventDefault(); } } function handleInsertion(event) { if (!event.metaKey && !event.ctrlKey) { event.stopPropagation(); event.preventDefault(); } } function App() { return ( <div> <DataGrid rows={rows} columns={columns} disableColumnMenu disableColumnSelector onKeyDown={handleCellNavigation} onKeyPress={handleInsertion} /> </div> ); } export default App;

回答 1 投票 0

Material UI Datagrid 复选框选择,服务器端分页清除 selectedModel。我想在更改页面时保留 selectedModel 状态

我正在使用 Material UI 的数据网格,并使用带有自定义分页组件的服务器端分页。当我选择同一页面上的复选框时,它工作正常,但随着页面的更改,我的选择模型...

回答 1 投票 0

Material-UI DataGrid 未正确排序数字列

我目前正在使用 Material-UI 的 DataGrid 组件。可以显示数据,但内置排序未按预期工作。当我尝试对 ASC/DESC 进行排序时,它是根据第一个进行排序

回答 4 投票 0

wpf RowDetailsTemplate 焦点

我目前有一个带有 rowdetailstemplate 的数据网格,其中包含另一个数据网格来显示父子关系。第二个网格有一列,其中包含一个按钮,单击该按钮时

回答 3 投票 0

WPF绑定DataGrid模板列组合框CellEditingTemplate和文本CellTemplate

我有一个产品集合 { SuppliesId, SupplyProductName } 我还有一张连接到此产品列表的发票 ProductInvoice {InvoiceId, SupplyProductId } 我创建了一个 WPF Da...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.