C# 选择「;“动态”;从表中下拉列表项

C# 选择「;“动态”;从表中下拉列表项,c#,asp.net,drop-down-menu,tablecell,C#,Asp.net,Drop Down Menu,Tablecell,//代码滞后文件 public void Button1_Click(object sender, EventArgs e) { while (reader.Read()) { DropDownList ddl = new DropDownList(); string[] s = { "Present", "Absent1", "Absent2", "Absent3" };

//代码滞后文件

public void Button1_Click(object sender, EventArgs e)
 {
             while (reader.Read())
         {

            DropDownList ddl = new DropDownList();
             string[] s = { "Present", "Absent1", "Absent2", "Absent3" };
             for (int i = 0; i < 3; i++)
             {
                 ddl.Items.Add(s[i]);
             }
             ddl.ID = "ddl";
             TableCell c2 = new TableCell();
             c2.Controls.Add(ddl);
             r.Cells.Add(c2);
             Table1.Rows.Add(r);
            }
 }

 public void Button2_Click1(object sender, EventArgs e)

 {

         foreach (TableRow tr in Table1.Controls)
         {
             foreach (TableCell tc in tr.Controls)
             {
                 if (tc.Controls[2] is DropDownList)
                {
                 Response.Write(((DropDownList)tc.Controls[2]).SelectedItem.Text+" ");
                }
             }
             Response.Write("<br/>");
         }
public void按钮1\u单击(对象发送者,事件参数e)
{
while(reader.Read())
{
DropDownList ddl=新的DropDownList();
字符串[]s={“存在”、“缺席1”、“缺席2”、“缺席3”};
对于(int i=0;i<3;i++)
{
ddl.Items.Add(s[i]);
}
ddl.ID=“ddl”;
TableCell c2=新的TableCell();
c2.控制。添加(ddl);
r、 添加(c2);
表1.行。添加(r);
}
}
公共作废按钮2\u单击1(对象发送者,事件参数e)
{
foreach(表1.控件中的TableRow tr)
{
foreach(tr.Controls中的TableCell tc)
{
如果(tc.Controls[2]为下拉列表)
{
Response.Write(((DropDownList)tc.Controls[2])。选择editem.Text+“”);
}
}
响应。写入(“
”); }

下拉列表项的选择有问题。我无法打印相应的选定项值。有人能帮忙吗?

当您在最后一个嵌套的foreach中时,请检查tc.Controls[2]。您的下拉列表是否可能不是第三个控件

我看不出有任何理由强迫它成为那个细胞的第三个控制

你最好做这样的事情:

if(tc.FindControl("ddl") != null)
{
   Response.Write(((DropDownList)tc.FindControl("ddl")).SelectedItem.Text+" ");
}
而不是:

 if (tc.Controls[2] is DropDownList)
 {
    Response.Write(((DropDownList)tc.Controls[0]).SelectedItem.Text+" ");
 }

发生了什么事?您是否遇到异常,或者您无法找到dropdownlist,或者您的dropdownlist为空?我编辑了控制部分。但问题并非如此。我仍然面临相同的问题。仍然没有打印选定的值。尽管我尝试了您的代码。是否达到了该if语句?它没有给出任何错误r、 但在点击按钮2后,不会给出任何结果。