我正在尝试了解如何设置以编程方式创建row
的{{1}}和columnspan
。我的代码在第一行添加它:
DataGrid
答案 0 :(得分:2)
在DataGrid上设置ColumnSpan本身并没有多大意义。 ColumnSpan定义网格上的控件将跨越多少列。如您所见,这是您想要为网格中的控件设置的内容,而不是网格本身。
您是否打算设置DataGrid列的宽度?如果是这种情况,你可以这样做:
column.Width = new DataGridLength(1, DataGridLengthUnitType.Auto);
或者像这样,如果你想要它基于DataGrid的整个宽度:
column.Width = new DataGridLength(1, DataGridLengthUnitType.Star);
如果要以编程方式向DataGrid添加新行,可以执行以下操作:
public class DataGridRow
{
public string Col1 { get; set; }
public string Col2 { get; set; }
}
...
var row = new DataGridRow{ Col1 = "Column1", Col2 = "Column2" };
dataGrid.Items.Add(row);
如果要设置DataGrid在其父网格中跨越的列数,可以使用以下内容:
Grid.SetColumnSpan(dataGrid, columnsToSpan);
我只是猜测你想要什么,如果我没有正确理解你,可以随时回复我的回答。
答案 1 :(得分:1)
这就是代码:
Grid.SetColumnSpan(dataGrid, colSpan);
Grid.SetRow(dataGrid, row);