这是完整的代码。当我在下拉列表框中选择1时,我想显示一个radiogroup。我收到错误'System.Web.HttpException:'RadioButton'类型的控件'RadioButton1'必须放在带有runat = server'的表单标签内。
namespace HostelRoomManagement
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
}
protected void DropDownList1_SelectedIndexChanged1(object sender, EventArgs e)
{
if (DropDownList1.SelectedValue == "1")
{
RadioButton rb1 = new RadioButton();
rb1.ID = "RadioButton1";
rb1.Text = "C block";
rb1.GroupName = "BlockGroup";
RadioButton rb2 = new RadioButton();
rb2.ID = "RadioButton2";
rb2.Text = "C block";
rb2.GroupName = "BlockGroup";
Page.Controls.Add(rb1);
Page.Controls.Add(rb2);
}
}
protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
{
}
}
}
我收到错误'System.Web.HttpException:'RadioButton'类型的控件'RadioButton1'必须放在带有runat = server'的表单标签内
答案 0 :(得分:0)
您已经创建了两个单选按钮,但是您在哪里添加了它们?
首先为您的单选按钮列表创建一个占位符,然后在那里添加这些控件 动态创建的控件将在回发时丢失。这意味着您必须管理动态创建的控件。
这是一个很好的[示例]:1 ASP.NET dynamically created controls and Postback。
答案 1 :(得分:0)
我怀疑您的问题是您引用了SelectedValue
,而您希望引用selectedindex
。
希望这有帮助。
答案 2 :(得分:0)
您可以根据他对页面的选择添加您希望用户查看的单选按钮,并将其可见性设置为false。然后,一旦用户选择一个值,就会改变你想要的单选按钮的可见性。这可能会更容易。