【问题标题】:How to CheckBoxList in DataTable show in GridView?如何在 GridView 中显示 DataTable 中的 CheckBoxList?
【发布时间】:2013-09-19 20:58:00
【问题描述】:

我有一个包含两列的 DataTable,如下所示:

    DataTable dTable = new DataTable();
    dTable.Columns.Add("col1", typeof(string));
    dTable.Columns.Add("col2", typeof(CheckBoxList));

    DataRow dRow = dTable.NewRow();
    dRow[0] = "A";

    CheckBoxList chk = new CheckBoxList();
    chk.Items.Add("x");
    chk.Items.Add("y");
    dRow[1] = chk;
    dTable.Rows.Add(dRow);

    GridView1.DataSource = dTable;
    GridView1.DataBind();

在输出 GridView 中只显示 col1 和 col2 不显示。如何在col2中显示CheckBoxList

【问题讨论】:

    标签: c# asp.net gridview datatable


    【解决方案1】:

    您不能将CheckBoxList 用作DataColumn 的类型(见下文)。这也没有意义,GridView 无论如何都没有考虑到它。

    如果您想在GridView 中使用CheckBoxList,请使用TemplateField 并将其数据绑定到RowDataBoundGridView

    DataType 属性支持以下基本 .NET Framework 数据类型:

    Boolean
    Byte
    Char
    DateTime
    Decimal
    Double
    Guid
    Int16
    Int32
    Int64
    SByte
    Single
    String
    TimeSpan
    UInt16
    UInt32
    UInt64
    Byte[]
    

    【讨论】:

    • 我要动态添加
    • @SamieyMehdi:您可以动态添加它,但不能在数据表中使用它。只需将其添加到 GridView 列中的 TemplateField 并填写 RowDataBound。您可以通过e.Row.FindControl("CheckBoxListID") 找到它
    猜你喜欢
    • 2013-04-09
    • 1970-01-01
    • 2014-11-28
    • 1970-01-01
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-23
    相关资源
    最近更新 更多