Asp.net 面板控件没有';不显示在GridView列中

Asp.net 面板控件没有';不显示在GridView列中,asp.net,Asp.net,其中一个GridView列必须存储一个Panel控件(其中包含一些控件)。问题是,代码不起作用,我的意思是,面板没有出现在列中 Panel myPanel = new Panel(); LinkButton zatw = new LinkButton(); zatw.CommandName = "Accept"; zatw.Text = "Accept"; LinkButton odrz = new LinkBut

其中一个GridView列必须存储一个Panel控件(其中包含一些控件)。问题是,代码不起作用,我的意思是,面板没有出现在列中

        Panel myPanel = new Panel();
        LinkButton zatw = new LinkButton();
        zatw.CommandName = "Accept";
        zatw.Text = "Accept";

        LinkButton odrz = new LinkButton();
        odrz.CommandName = "Deny";
        odrz.Text = "Deny";

        myPanel.Controls.Add(zatw);
        myPanel.Controls.Add(odrz);

        DataTable DT = new DataTable();
        DT.Columns.Add("Options", typeof(Panel));

        DataRow myRow = DT.NewRow();

        myRow1[0] = myPanel;

        DT.Rows.Add(myRow1);
        GridView1.DataSource = DT;
        GridView1.DataBind();
        ...

这是因为
DT.Columns.Add(“Options”,typeof(Panel))不接受控件类型作为第二个参数

从文档中删除。DT.列的类型为

DataColumnCollection

实际上,它在使用时有一个Add(String,Type)方法。但是类型是列数据类型。。。它不接受控件

例如:

Private Sub AddColumn()
    Dim columns As DataColumnCollection = _
        DataSet1.Tables("Orders").Columns
    Dim column As DataColumn = columns.Add( _
        "Total", System.Type.GetType("System.Decimal"))
    column.ReadOnly = True
    column.Unique = False
End Sub

在本例中,将创建一个名为“Total”且类型为“decimal”的列。

我真的不知道您到底想做什么,但我认为您无法以这种方式创建一个不受控制的网格。为什么不让网格使用模板列,然后根据绑定到的数据调整模板,而不是像您尝试的那样绑定到预构建的UI