想要根据数据记录中某字段的值来判断该列应该为什么控件:
  如:根据ISInform的值(0或1)来决定DataList中某列是显示文字还是链接;
    ISInform为1则显示文字,其它情况下显示一个能够执行服务器端过程的链接!
    请各位指点一下,不胜感激!

解决方案 »

  1.   

    <ItemTemplate>
    <asp:Label id="Label2" runat="server">Label</asp:Label>
    <asp:LinkButton id="LinkButton1" runat="server" CommandName="MyCommand">LinkButton</asp:LinkButton>
    </ItemTemplate>
    ***************************
    private void DataList1_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
    {
    if(e.Item.ItemIndex>-1)
    {
    Label lb = (Label)e.Item.FindControl("Label1");
    LinkButton lbtn = (LinkButton)e.Item.FindControl("LinkButton1"); DataRowView row = e.Item.DataItem as DataRowView;
    if(row["ISInform"].ToString() =="1")
    {
    lb.Text = row["field1"].ToString();
    lbtn.Visible = false;
    }
    else
    {
    lbtn.Text = row["field1"].ToString();
    lb.Visible = false;
    }
    }
    }private void DataList1_ItemCommand(object source, System.Web.UI.WebControls.DataListCommandEventArgs e)
    {
    if(e.CommandName == "MyCommand")
    {
    //执行服务器端过程
    }
    }
      

  2.   

    不是我贴的这部分代码的问题,是你其他代码的问题,常见于:
    public string Test()
    {
       if(......)
       {
          return "abc";
       }
       else
       {
          //分支里缺少了return,导致有可能没有返回值,编译报错
       }
    }