如题,datagrid中用代码定义一个模板列,有连接字段的那种

解决方案 »

  1.   

    private void mygrid_ItemDataBound(object sender, DataGridItemEventArgs e)
      {
       if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
       {
        HyperLink link  = (HyperLink)e.Item.Cells[0].Controls[0];  
       
        string url = link.NavigateUrl;
        url += "?id=" + e.Item.Cells[1].Text;
        link.NavigateUrl = url;
       }
      }
    <asp:TemplateColumn HeaderText="test">
           <ItemTemplate>
            <asp:HyperLink runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.XTBH") %>' NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.MC", "A.aspx?id={0}) %>'>
            </asp:HyperLink>
           </ItemTemplate>
      

  2.   

      要是完全用代码创建呢,从TemplateColumn aa=new TemplateColumn()开始,往下呢
      

  3.   

    那还不如再重新写一个GridView控件。