向数据网格添加列并更改标题
本文关键字:标题 添加 数据 数据网 网格 | 更新日期: 2023-09-27 18:35:31
我创建了一个具有特定属性的对象列表,然后将其绑定到dataGrid列的顺序与我预期不符,因为我从基类继承了属性并将其他属性添加到继承类中,所以我尝试手动更改顺序,但这不起作用。因此,我的问题是如何在列表绑定到数据网格时更改列的顺序和标题。下面是一个演示我试图完成的任务的示例:
class Program
{
void showData()
{
test2 t1 = new test2() { p1 = 1, p2 = 6, p3 = 9 };
test2 t2 = new test2() { p1 = 4, p2 = 5, p3 = 6 };
List<test2> l = new List<test2>();
l.Add(t1);
l.Add(t2);
datagrid1.ItemsSource = l; // p3 appears in the first column of the grid but I want it to be in the last column
}
}
class test
{
public int p1 { get; set; }
public int p2 { get; set; }
}
class test2 : test
{
public int p3 { get; set; }
}
在控件的 XAML 部分中手动定义列:
<DataGrid Name="datagrid1" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="p1" Binding="{Binding p1}"/>
<DataGridTextColumn Header="p2" Binding="{Binding p2}"/>
<DataGridTextColumn Header="p3" Binding="{Binding p3}"/>
</DataGrid.Columns>
</DataGrid>