【问题标题】:How to change the datagrid column name with itemsoure from a query?如何使用查询中的 itemoure 更改数据网格列名称?
【发布时间】:2013-07-08 11:54:14
【问题描述】:

这是我的查询:

var query = from battery in db.batteries                           
            select battery;

我使用此命令将数据加载到我的数据网格中:

mydatagrid.ItemsSource = query.ToList();

最后的结果是这样的:

我遇到的问题是我无法编辑数据网格的列。例如,我想隐藏一些列,如 ID 列或 ownid 列。我还想更改列名:序列号->“序列号”,组装日期->“日期”。

我该怎么做?

谢谢,

让-巴蒂斯特·科莱

【问题讨论】:

  • 将自动生成列设置为 false 并定义您自己的列

标签: c# sql wpf datagrid


【解决方案1】:

将自动生成列设置为 false 并定义您自己的列

<DataGrid x:Name="dgExp" AutoGenerateColumns="False" ItemsSource="{Binding}">
<DataGrid.Columns>
<DataGridTextColumn Header="Serial number" Width="*" Binding="{Binding Path=serialnumber }" />
<DataGridTextColumn Header="Date" Width="*" Binding="{Binding Path=assemblydate }" />
</DataGrid.Columns>
</DataGrid>

【讨论】:

    【解决方案2】:

    您需要将 AutoGenerateColumns 设置为 false 并在 DataGrid.Columns 中指定您的列

    <DataGrid AutoGenerateColumns="False">
         <DataGrid.Columns>
              <DataGridTextColumn Header="Serial Number" Binding="{Binding serialnumber}" />
              ...
         </DataGrid.Columns>
    </DataGrid>
    

    【讨论】:

      猜你喜欢
      • 2021-05-01
      • 1970-01-01
      • 2014-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多