C# 如何使用派生列名在WPF dataGrid中显示数据集?

C# 如何使用派生列名在WPF dataGrid中显示数据集?,c#,wpf,dataset,C#,Wpf,Dataset,我正在使用以下代码: dataGrid_Actions.ItemsSource = dataSet.Tables[0].DefaultView; 这很好,但它返回的列标题与数据库中的一样。当然,我需要使用户友好的标题。实现这一目标的快速方法是什么? 谢谢这个答案不太实用,只是用来演示如何更改数据网格的名称。列: dataGrid_Actions.ItemsSource = dataSet.Tables[0].DefaultView; foreach (DataGridColumn column

我正在使用以下代码:

dataGrid_Actions.ItemsSource = dataSet.Tables[0].DefaultView;
这很好,但它返回的列标题与数据库中的一样。当然,我需要使用户友好的标题。实现这一目标的快速方法是什么? 谢谢

这个答案不太实用,只是用来演示如何更改
数据网格的名称。列

dataGrid_Actions.ItemsSource = dataSet.Tables[0].DefaultView;
foreach (DataGridColumn column in dataGrid.Columns)
{
    column.Header = "Something";
}

当然,您不希望所有的
DataGridColumn标题
值都读取相同的值,但我相信您可以解决如何为每个值设置自己的值

您可以在GridView的RowDataBound事件中更改标题文本,如下所示:

Private Sub gvUsers_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvUsers.RowDataBound
    If e.Row.RowType = DataControlRowType.Header Then
      For i As Integer = 0 To e.Row.Cells.Count - 1
         e.Row.Cells(i).Text = "Col " & i.ToString
      Next
    End If
  End Sub

同样,对于datagrid,您有
ItemDataBound
事件。您可以更改该事件中的列名。

我对VB或其他任何东西都不太熟悉:(我已将代码转换为c#:private void gvUsers_RowDataBound(对象发送者,System.Web.UI.WebControls.GridViewRowEventArgs e){if(e.Row.RowType==DataControlRowType.Header){for(inti=0;i@user2611292,如果你把C#添加到你的答案中,而不是放在评论中,它会更容易阅读吗?