在page_load中获取ComboBox当前文本

时间:2014-06-04 12:20:38

标签: c# asp.net combobox postback viewstate

我想在页面加载中从组合框中获取selecteditem,在回发发生之前,这可能吗?

根据selecteditem值,我在页面加载中执行不同的代码,所以我真的需要在回发之前的值(在page_load中)。

例如:

  1. 在页面加载中,我将selecteditem与字符串进行比较,如果它相等(selectedItem.ToString() == "Test")
  2. 然后我想在文本框中添加属性,例如textBox1.Attributes.Add("hello", "world")
  3. 由于Page_Load在PostBack之前执行,我不知道如何在page_load中获取selecteditem,所以我可以在上面的例子中使用它。

2 个答案:

答案 0 :(得分:1)

如果您只想检查页面加载但不检查popstback,则需要在 page_load 中执行此操作:

if(!IsPostBack)
{

    if(combo.SelectedItem.ToString() == "Test")
    {

     // do something
    }

}

答案 1 :(得分:0)

您无法在Page_Load之前访问组合框的值,因为在Page_Load之前控件不会呈现,甚至也不会在Pre_Init事件中呈现。它将在Page_Load之后呈现。

您可以在Page_Load事件后访问值。