gpt4 book ai didi

c# - WPF C# DataGrid 编辑单元格

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:35 24 4
gpt4 key购买 nike

我在编辑 DataGrid 中的单元格时遇到问题。

当我双击一个单元格时,出现异常 - InvalidOperationException 'EditItem' is not allowed for this view

我正在寻找在数据网格中编辑单元格的最简单方法。

XAML-------------------------------------------- --------------------------------XAML

<DataGrid x:Name="ZdarzeniaDataGrid" AutoGenerateColumns="False" CanUserAddRows="True" HorizontalAlignment="Left" Margin="71,398,0,0" VerticalAlignment="Top" Height="279" Width="1119">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding IdZdarzenia}" Header="Id Zdarzenia" Width="100"/>
<DataGridTextColumn Binding="{Binding Gospodarze}" Header="Gospodarze" Width="100"/>
<DataGridTextColumn Binding="{Binding Goście}" Header="Goście" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs1}" Header="Kurs 1" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs0}" Header="Kurs 0" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs2}" Header="Kurs 2" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs10}" Header="Kurs 10" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs20}" Header="Kurs 20" Width="100"/>
<DataGridTextColumn Binding="{Binding Kurs12}" Header="Kurs 12" Width="100"/>
<DataGridTextColumn Binding="{Binding DataZdarzenia}" Header="Data Zdarzenia" Width="100"/>
</DataGrid.Columns>
</DataGrid>

C# -------------------------------------------- ------------------------------ C#

ZdarzeniaDataGrid.Items.Add(
new { IdZdarzenia = napis.ItemArray.GetValue(0).ToString(),
Gospodarze = napis2.ItemArray.GetValue(0).ToString(),
Goście = napis3.ItemArray.GetValue(0).ToString(),
Kurs1 = napis.ItemArray.GetValue(3).ToString(),
Kurs0 = napis.ItemArray.GetValue(4).ToString(),
Kurs2 = napis.ItemArray.GetValue(5).ToString(),
Kurs10 = napis.ItemArray.GetValue(6).ToString(),
Kurs20 = napis.ItemArray.GetValue(7).ToString(),
Kurs12 = napis.ItemArray.GetValue(8).ToString(),
DataZdarzenia = napis.ItemArray.GetValue(9).ToString()
});

最佳答案

创建定义了所有属性的类,并将 Datagrid 的 ItemsSource 设置/绑定(bind)到数据类列表。

public class Data
{
public string IdZdarzenia {get;set;}
public string Gospodarze {get;set;}
public string Goście {get;set;}
public string Kurs1 {get;set;}
public string Kurs0 {get;set;}
public string Kurs2 {get;set;}
public string Kurs10 {get;set;}
public string Kurs20 {get;set;}
public string Kurs12 {get;set;}
public string DataZdarzenia { get; set; }
}

设置项目来源

    List<Data> dataSource = new List<Data>();
dataSource.Add(new Data()
{
IdZdarzenia = "a",
Gospodarze = "d",
Goście = "f",
Kurs1 = "g",
Kurs0 = "r",
Kurs2 = "gs",
Kurs10 = "sd",
Kurs20 = "sds",
Kurs12 = "sdss",
DataZdarzenia = "eeee"});
ZdarzeniaDataGrid.ItemsSource = dataSource;

这应该可以解决您的问题。

谢谢

关于c# - WPF C# DataGrid 编辑单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18549673/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com