我有个页面,要根据不同的sql查询语句显示不同的表,每次的sql查询语句字段完全不一样,这种情况下“详细”超级链接绑定要根据字段的变化而变化,所以只能用代码去实现,弄了几天没搞定,谁来救我?象下面的方法只能绑定fd1,没法随着sql的字段变化,做N个网页又太多了,
<asp:HyperLinkField DataNavigateUrlFields="fd1" DataNavigateUrlFormatString="webform1.aspx?id={0}" Text="详细" Target="main" />
            </Columns>
        </asp:GridView>

解决方案 »

  1.   

    可以写sql语句的时候as一下字段,如1,select id1 as fd1,.... from table12,select id2 as fd1,.... from table2
       .
       .
       .这样超级连接列中就直接使用fd1就可以了
      

  2.   

    HyperLinkField column = new HyperLinkField();
    column.DataNavigateUrlFields = strArray;
    column.DataNavigateUrlFormatString = "webform1.aspx?id={0}";
    column.DataTextField = strArray[1];
    column.DataTextFormatString = "{0}";
    GridView1.Columns.Add(column);
    GridView1.DataBind();
      

  3.   

    你也可以用模板列,绑定的时候用FindCOntrol,然后指定url