<asp:TemplateField HeaderText="内容标题" SortExpression="Title">
                        <ItemTemplate>
                            <table>
                                <tr>
                                    <td>
                                        <asp:HyperLink ID="HyperLink1" runat="server"></asp:HyperLink>
                                    </td>
                                </tr>
                            </table>
                        </ItemTemplate>
                    </asp:TemplateField>
上面是我在前台写的代码
for (int i = 0; i < GridView1.Rows.Count; i++)
                {
                    HyperLink hl = (HyperLink)GridView1.Rows[i].Cells[0].FindControl("HyperLink1");
                    hl.NavigateUrl = pubchaurl + ds.Tables[0].Rows[i]["AAA"];
                    hl.Text = ds.Tables[0].Rows[i]["BBB"].ToString();
                    hl.Target = "_blank";
                }
这是我后台写的代码,我能获取到这HyperLink1,怎么设置回它的内容呢,就是让GridView1.Rows[i].Cells[0]里的HyperLink1的内容等于我上面设置的这些。大神们赶紧帮帮忙啊,这次真的很急啊

解决方案 »

  1.   

     hl.Text你这不是都设置了吗
      

  2.   

    你应该在绑定事件里面写啊
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            GridView1.DataSource = ds.Tables[0];
            GridView1.DataBind();
        }
    }protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            String AAA = DataBinder.Eval(e.Row.DataItem, "AAA").ToString();
            String BBB = DataBinder.Eval(e.Row.DataItem, "BBB").ToString();
            HyperLink hl = (HyperLink)e.Row.FindControl("HyperLink1");
            hl.NavigateUrl = pubchaurl + AAA;
            hl.Text = BBB;
            hl.Target = "_blank";
        }
    }