你这是在哪个事件下的代码?你的datagrid有几个列,都是什么呢?能不能说清楚一点?

解决方案 »

  1.   

    是itemdatabound事件下,假设模板中有姓名--语文--数学--外语--历史5列吧?
    抱歉--刚才我出去了一下!
      

  2.   

    那你说datagrid中只有columns[0],那就是说其他的columns就没有写入datagrid了,是否应该先检查一下,从数据库读到datagrid的那部分代码?
      

  3.   

    假设模板中有姓名--语文--数学--外语--历史5列吧?这句是什么意思?模版中有五列?还是说这五列是datagrid的绑定列,而模版列是第六列呢?
      

  4.   

    抱歉!当然是模板中有五列。附带问一句--datagrid中能够同时用绑定列和模板列吗?如果行,其格式是否会显得很混乱呢?
      

  5.   

    private void ContentPageGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if(e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
    {
    string F_ContentID = DataBinder.Eval(e.Item.DataItem, "F_ContentID", "{0}");
    string F_ContentPageID = DataBinder.Eval(e.Item.DataItem, "F_ContentPageID", "{0}");
    string F_SubTitle = DataBinder.Eval(e.Item.DataItem, "F_SubTitle", "{0}");
    string F_Link = DataBinder.Eval(e.Item.DataItem, "F_Link", "{0}");
    if(this.F_ContentPageID == Convert.ToInt32(F_ContentPageID) )
    e.Item.Visible = false;
    else
    e.Item.Visible = true;
    if(F_Link != "")
    {
    if(F_Link.ToLower().IndexOf("http://") != 0 )
    F_Link = "http://" + F_Link;
    }
    ((HyperLink)e.Item.FindControl("F_SubTitle")).Text = F_SubTitle;
    ((HyperLink)e.Item.FindControl("F_SubTitle")).CssClass = CssName;
    if(F_Link == "")
    ((HyperLink)e.Item.FindControl("F_SubTitle")).NavigateUrl = Request.Path + "?F_ContentID=" +
    F_ContentID + "&F_ContentPageID=" + F_ContentPageID + "&F_CategoryID=" + F_CategoryID;
    else
    ((HyperLink)e.Item.FindControl("F_SubTitle")).NavigateUrl = F_Link; }
    }
    //这样好些
    //要交流加QQ11686738
    //一起学习
      

  6.   

    学习ing 
    怎么样加入模板!?