[英]how to check if the ddl.selectedindexchange event has been fired on the page load
这是我的代码:页面加载
protected void Page_Load(object sender, EventArgs e)
{
//On first request
if (!IsPostBack)
{
panel1.Visible = true;
panel2.Visible = false;
panel3.Visible = false;
}
//for subsequent postbacks
else
{
//If the enquiry is direct
if ( Direct_Rdbtn.Checked)
{
panel1.Visible = false;
panel2.Visible = false;
panel3.Visible = true;
//add default text value "D" for date dropdownlist of DOB
if (DOB_Date_Ddl.Items.Count == 0)
{
ListItem li = new ListItem();
li.Text = "D";
DOB_Date_Ddl.Items.Add(li);
}
}
//For all other sources of enquiries
else
{
//in this if statement i actualy want to check for `selectedindexchange` event togther with `AllOthers_Rdbtn.Checked`
if (AllOthers_Rdbtn.Checked )
{
panel1.Visible = false;
panel2.Visible = false;
panel3.Visible = true;
}
else if (AllOthers_Rdbtn.Checked)
{
panel1.Visible = false;
panel2.Visible = true;
panel3.Visible = false;
LinkButton1.Enabled = false;
LinkButton1.Text = "";
en.mainEnq_Stu_Mobile = TextBox1.Text;
}
}
}
}
现在的问题是,我的页面上有三个面板,这些面板的可见性已经发挥了作用。 在第一个面板上有两个单选按钮,它们决定了两个面板第二个和第三个的可设置性。 第一个面板显示在首页请求上。 问题是我在第三个面板中启用了自动回发的dropdownlist控件。 一旦由于ddl而发回邮件,并且页面加载事件触发,并且当时
还检查了AllOthers_Rdbtn.Checked,而不是显示第三个面板。 panel2再次显示。 我想要的是一种检查if语句中的Direct_Rdbtn.check是否已触发selectedindexchange事件的方法。
您应该将代码移至事件处理程序:
protected void Direct_Rdbtn_SelectedIndexChanged(object sender, EventArgs args)
{
//If the enquiry is direct
if (Direct_Rdbtn.Checked)
{
...
}
else
{
...
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.