0

我有一个包含两列的 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

4

1 回答 1

1

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

如果要CheckBoxList在 a 中GridView使用 aTemplateField并将其数据绑定RowDataBoundGridView.

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

Boolean
Byte
Char
DateTime
Decimal
Double
Guid
Int16
Int32
Int64
SByte
Single
String
TimeSpan
UInt16
UInt32
UInt64
Byte[]
于 2013-09-19T21:21:50.707 回答