可以把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" >
...

解决方案 »

  1.   

    kenfil(kenfil)非常感谢  !
      

  2.   

    动态增加模板列,做成类:
      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