我正在動態構建一個DataTable,我正在嘗試在DataRow中添加一個“鏈接”,我將其添加到DataTable中 . DataTable在創建后綁定到GridView .
像這樣的東西:
DataTable dataTable = new DataTable();
foreach (Item item in items)
{
DataRow row = dataTable.NewRow();
dataTable.Columns.Add(new DataColumn("col"));
row["col"] = "Link here";
dataTable.Rows.Add(row);
}
然后我將它綁定到GridView:
AutoGenerateColumns="true" AllowPaging="false" PagerSettings-Visible="false"
ShowHeader="true" ShowFooter="true" CellPadding="0" CellSpacing="0"
Visible="True">
但是當我將它綁定到GridView時,列中的HTML被編碼 . 有沒有辦法在那里添加HyperLink對象或類似的東西?
附:它不是在示例中,而是動態添加列(這意味著我在渲染之前不知道我將擁有多少列)
UPDATE #1
我在創建列時可以訪問GridView . 我能夠做到這樣的事情:
dataTable.Columns.Add(new DataColumn("col"));
BoundField bf = new BoundField();
bf.HtmlEncode = false;
bf.DataField = "col";
grd.Columns.Add(bf);
row["col"] = "Link here";
但它顯示2個coloumns“col”...
UPDATE #3 : 我使用的是DataGrid . 在數據行中插入"plain text"時,它不對HTML進行編碼 .