谢谢

解决方案 »

  1.   

    HyperLink hl = (HyperLink)e.Item.FindControl("hl");
      

  2.   

    1. 模板列是不确定行数的,所以无法再cs文件总生成。你得用视图界面中写绑定语句,例如
    <asp:CheckListBox....DataSource=《%Container.DataItem....%》/>2、在DataGrid_ItemCreated事件对应的函数里来实现private void MyDataGrid_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.EditItem || e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.SelectedItem)
    {
    // 用e.Item.Cells[0].FindControl("控件id")获得控件,然后设置
    }
    }
      

  3.   

    <asp:CheckListBox....DataSource=<%Container.DataItem....%>/>
      

  4.   

    在属性生成器里找到HyperLink后,在URL字段填写"表关键字",URL格式字符串里写
    ASAS.ASPX?表关键字={0}
      

  5.   

    也就是说在.cs文件中除反射外无法调用
    在.aspx文件中可用楼上各们说的方法调用是吗?
      

  6.   

    用conghui(聪慧)的方法((HyperLink)e.Item.FindControl("hl")).ImageUrl="sample.jpg";
      

  7.   

    上面的方法我都在.cs(后台)里试过了,都是报未将对像引用到实例的错。
    所以
    也就是说在.cs文件中除反射外无法调用
    在.aspx文件中可用楼上各们说的方法调用是吗?
      

  8.   

    如果在cs文件中调用,只能HyperLink hl = (HyperLink)e.Item.FindControl("hl");这样调用了;如果在aspx中可以在属性生成器里指定
      

  9.   

    HyperLink link = (HyperLink)e.Item.FindControl("hl");
    或HyperLink link = (HyperLink)e.Item..cells[0].controls[0];