我通过属性生成器生成了一个datagrid,其中有一个列为hyperlinkcolumn,我想在后台cs程序里修改这个hyperlinkcolumn的url属性,其中DataNavigateUrlField="field1",DataNavigateUrlFormatString属性需要动态设置为
"new_page.aspx?f1={0}"+"&year="+year+"&month="+month,year 和month都是string 变量,请问如何处理呢?

解决方案 »

  1.   

    HyperLinkColumn hlc = new HyperLinkColumn();
    hlc.DataNavigateUrlField="field1";
    hlc.DataNavigateUrlFormatString="new_page.aspx?f1={0}&year="+year+"&month="+month;
    hlc.Text = "连接名称";
    DataGrid1.Columns.Add(hlc);
      

  2.   

    new_page.aspx?f1={0}"+"&year="+year+"&month="+month
    把上面的这些当列表中的一列可不可以
      

  3.   

    在DataGrid的ItemDataBound事件处理程序中来实现:void dataGrid1_ItemDataBound(object src,DataGridItemEventArgs e){
    if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem){
    //假设你的HyperlinkColumn在第四列,列索引为3
    HyperLink link=e.Item.Cells[3].Controls[0] as HyperLink;
    if(link!=null){
    //在这对link进行设置
    }
    }
    }