RadioButtonList List;
            if (i <= 25)
            {
                List = (RadioButtonList)Panel1.FindControl("rbtnList"+i.ToString());
            }
为什么List的值一直是null呢?

解决方案 »

  1.   

    說明你的Panel中沒有rbtnList+i這個控件
      

  2.   

         if (i  <= 25) 
                { 
                    List = (RadioButtonList)Panel1.FindControl("rbtnList"+i.ToString()); 
                } 
    呵呵。。i的值是0啊。。怎么可能会有值。。应该用个for循环。。
      

  3.   

    list没有实例
    当然是null了
      

  4.   

    List 是系统已定义类名或关键字
    FindControl方法没有找到控件
      

  5.   


    RadioButtonList List;
    for (i=0;i <= 25;i++)
    {
    List = (RadioButtonList)Panel1.FindControl("rbtnList"+i.ToString());
    //CODE:对List的操作
    }
      

  6.   

      for (int i = 1; i <= 50; i++)
            {
                RadioButtonList List;
                if (i <= 25)
                {
                    List = (RadioButtonList)Panel1.FindControl("rbtnList"+i.ToString());
                }
    完整的是这样的
      

  7.   

    以前有人讨论过这个问题,我试了一下代码,可行,发给你,你自己看看吧using System;
    using System.Data;
    using System.Configuration;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            TextBox txt=new TextBox();
            this.form1.Controls.Add(txt);        //
            createContros();
        }    Control cont = new Control();
        private void createContros()
        {
    //------------------------------------
            for (int i = 0; i < 10; i++)
            {
                cont.Controls.Add(new LiteralControl("<tr>"));
                cont.Controls.Add(new LiteralControl("    <td align=\"center\" bgcolor=\"#EFEFEF\"><strong>"));            DateTime dt = DateTime.Now;
                dt = dt.AddDays(i);
                Label lable = new Label();
                lable.ID = "lable" + i;
                lable.Text = "第&nbsp;&nbsp;" + dt.Day  + "&nbsp;&nbsp;天";
                cont.Controls.Add(lable);            cont.Controls.Add(new LiteralControl("        </strong>"));
                cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("    <td bgcolor=\"#EFEFEF\">&nbsp;&nbsp;&nbsp;&nbsp;<font color=\"red\">"));            Label lableTime = new Label();
                lableTime.ID = "lableTime" + i;
                lableTime.Text = Convert.ToString(dt.Year) + "年" + Convert.ToString(dt.Month) + "月" + Convert.ToString(dt.Day) + "日";
                cont.Controls.Add(lableTime);            cont.Controls.Add(new LiteralControl("    </font></td>"));
                cont.Controls.Add(new LiteralControl("    <td align=\"center\" bgcolor=\"#EFEFEF\">用&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;餐:</td>"));
                cont.Controls.Add(new LiteralControl("    <td bgcolor=\"#EFEFEF\">"));            CheckBoxList check = new CheckBoxList();
                check.ID = "check" + i;
                check.Items.Add(new ListItem("早餐", "早餐"));
                check.Items.Add(new ListItem("中餐", "中餐"));
                check.Items.Add(new ListItem("晚餐", "晚餐"));
                check.RepeatDirection = RepeatDirection.Horizontal;
                cont.Controls.Add(check);            cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("    <td align=\"center\" bgcolor=\"#EFEFEF\">入&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;住:</td>"));
                cont.Controls.Add(new LiteralControl("    <td bgcolor=\"#EFEFEF\">"));            TextBox txt = new TextBox();
                txt.ID = "txtRZ" + i;
                cont.Controls.Add(txt);            cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("</tr>"));
                cont.Controls.Add(new LiteralControl("<tr>"));
                cont.Controls.Add(new LiteralControl("    <td colspan=\"6\" align=\"center\" height=\"5\">"));
                cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("</tr>"));
                cont.Controls.Add(new LiteralControl("<tr>"));
                cont.Controls.Add(new LiteralControl("    <td align=\"center\">简&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;介:"));
                cont.Controls.Add(new LiteralControl("    <td colspan=\"5\">"));            TextBox content = new TextBox();
                content.ID = "txtJJ" + i;
                content.Rows = 4;
                content.TextMode = TextBoxMode.MultiLine;
                content.Width = Unit.Parse("300px");
                cont.Controls.Add(content);            cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("</tr>"));
                cont.Controls.Add(new LiteralControl(" <tr>"));
                cont.Controls.Add(new LiteralControl("    <td colspan=\"6\" align=\"center\" height=\"5\">"));
                cont.Controls.Add(new LiteralControl("    </td>"));
                cont.Controls.Add(new LiteralControl("</tr>"));
            }
            form1.Controls.Add(cont);
        }    protected void Button1_Click(object sender, EventArgs e)
        {
            //MessageClass mc = new MessageClass();
            //mc.Silent = true;
            //mc.Charset = "gb2312";
            //mc.ISOEncodeHeaders = false;
            //mc.Subject = this.txtTitle.Text;
            string content = "";
            content += "<table width=\"780\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"bd\">";//-----------------------------------------------------------------------
            for (int i = 0; i < 10; i++)
            {
                DateTime dt = DateTime.Now;
                dt = dt.AddDays(i);            CheckBoxList check = (CheckBoxList)cont.FindControl("check" + i);            string checkText = "";
                for (int j = 0; j < 3; j++)
                {
                    if (check.Items[j].Selected)
                    {
                        checkText += check.Items[j].Value + "、";
                    }
                }
                if (checkText != "")
                {
                   // checkText = checkText.Substring(checkText.IndexOf("、"));
                }            content += "    </tr>";
                content += "        <td align=\"center\" bgcolor=\"#EFEFEF\"><strong>第&nbsp;&nbsp;" + dt.Day + "&nbsp;&nbsp;天</strong></td>";
                content += "        <td bgcolor=\"#EFEFEF\">&nbsp;&nbsp;&nbsp;&nbsp;<font color=\"red\">" + Convert.ToString(dt.Year) + "年" + Convert.ToString(dt.Month) + "月" + Convert.ToString(dt.Day) + "日</font></td>";
                content += "        <td align=\"center\" bgcolor=\"#EFEFEF\">用&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;餐:</td>";
                content += "        <td bgcolor=\"#EFEFEF\">" + checkText + "</td>";
                content += "        <td align=\"center\" bgcolor=\"#EFEFEF\">入&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;住:</td>";
                content += "        <td bgcolor=\"#EFEFEF\">" + "aaaaaaaaaa" + "</td>";
                content += "    </tr>";
                content += "    <tr>";
                content += "        <td colspan=\"6\" align=\"center\" height=\"5\">";
                content += "        </td>";
                content += "    </tr>";
                content += "    <tr>";
                content += "        <td align=\"center\">简&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;介:";
                content += "        <td colspan=\"5\">" + "aaaaaaaaaaa" + "</td>";
                content += "    </tr>";
                content += "    <tr>";
                content += "        <td colspan=\"6\" align=\"center\" height=\"5\">";
                content += "        </td>";
                content += "    </tr>";
            }        Response.Write(content);
            //mc.HTMLBody = content;
            //mc.From = myconfig.mailFrom;
            //mc.FromName = "BETRIP";
            //mc.MailServerUserName = myconfig.mailFrom;
            //mc.MailServerPassWord = myconfig.mailPass;
            //mc.ContentType = "text/html";
            //mc.AddRecipient(myconfig.mailReceiving, "", "");        //bool res = mc.Send(myconfig.mailServer, false);
            //mc.Clear();
            //mc.Close();
            //mc = null;
            //linTool.showError("回复成功!", "order.aspx");
        }
    }