在Silverlight Datagrid中是否有可能具有具有不同类型控件的行的列?例如,列的前两个行应该是文本,接下来的两个行将具有按钮,然后接下来的6行将具有复选框。我还需要在后面的代码中构建它。任何帮助,将不胜感激。
也许以下代码为您提供了想法。
foreach (var item in ItemList)
{
//Row definition and column definitions are similar
LayoutRoot.RowDefinitions.Add(new RowDefinition()
{ Height = GridLength.Auto});
HelloObject hl=new HelloPObject();
//Attached property imeplemantation
Grid.SetRow(hl,Layout2.RowDefinitions.Count);
//You may add any UIElement as Children
LayoutRoot.Children.Add(hl);
}
编辑:对不起,我没有意识到datagrid。
好的,datagrid也可能Afaik Telerik的RadgridView为您提供了行的索引。但是您可以自己管理。
在此外,当您击中订购订单时,可能会丢失此订单,具体取决于您的列排序。但是,您可以根据DataGrid的项目源元素中的属性进行切换。
DataGrid grid = new DataGrid();
int rowNdx = 0;
grid.LoadingRow += (s, a) =>
{
DataGridCell cell = myList.Columns[0].GetCellContent(a.Row).Parent as DataGridCell;
switch (rowNdx)
{
case 0:
cell.Content = new TextBlock() { Text= "Click" };
break;
default:
cell.Content = new Button() { Content = "Click" };
break;
}
rowNdx++;
};