可以把column的内容做成user control://加载摸板
TemplateColumn tc = new TemplateColumn();
ITemplate it = this.LoadTemplate("~/Templates/ImageColumn.ascx");
tc.ItemTemplate = it;
this.dataGridWhatever.Columns.Add(tc); ...//棒定
HtmlImage hi = e.Item.Controls[ImageColumnIndex].Controls[0].FindControl("imgWhatever") as HtmlImage;
hi.Src = "..."//User control
...
<img id="imgWhatever" runat="server" >
...
TemplateColumn tc = new TemplateColumn();
ITemplate it = this.LoadTemplate("~/Templates/ImageColumn.ascx");
tc.ItemTemplate = it;
this.dataGridWhatever.Columns.Add(tc); ...//棒定
HtmlImage hi = e.Item.Controls[ImageColumnIndex].Controls[0].FindControl("imgWhatever") as HtmlImage;
hi.Src = "..."//User control
...
<img id="imgWhatever" runat="server" >
...
Sub InstantiateIn(ByVal container As Control) _
Implements ITemplate.InstantiateIn
Dim lc As New Literal()
Dim im As New System.Web.UI.WebControls.Image()
Select Case templateType
Case ListItemType.Header
lc.Text = "<B>" & columnName & "</B>" container.Controls.Add(lc) Case ListItemType.Item
lc.Text = "Item " & columnName
im.BackColor = Color.Black
container.Controls.Add(lc)
container.Controls.Add(im)
Case ListItemType.EditItem
Dim tb As New TextBox()
tb.Text = ""
container.Controls.Add(tb)
Case ListItemType.Footer
lc.Text = "<I>Footer</I>"
container.Controls.Add(lc)
End Select
End Sub