2013-06-25 37 views
0

我正在開發SharePoint部件2010的Web部件。我有一個事件下拉菜單。更改時應顯示一個標籤或另一個標籤,具體取決於值,但這不起作用。我確實把autopostback設置爲true,但我不希望每次點擊下拉列表時都會加載整個頁面。Web部件Sharepoint - 下拉SelectIndexChanged以設置不可見的工作

protected override void CreateChildControls() 
    { 
     toolPartPanel = new Panel(); 
     ddl = new DropDownList(); 
     ddl.ID = "ddl"; 
     ddl.SelectedIndexChanged += new EventHandler(ddl_SelectedIndexChanged); 
     ddl.EnableViewState = true; 
     ddl.Items.Add("a"); 
     ddl.Items.Add("b"); 

     label1 = new Label(); 
     label1.Text = "a selected"; 
     label1.Visible = false; 

     label2 = new Label(); 
     label2.Text = "b selected"; 
     label2.Visible = false; 

     this.Controls.Add(label1); this.Controls.Add(label2); 
     this.Controls.Add(ddl); 
     this.Controls.Add(toolPartPanel); 
     base.CreateChildControls(); 
    } 

    void ddl_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     Selected = ddl.SelectedValue.ToString(); 
     if (Selected == "a") 
     { 
      label1.Visible = true; 
     } 
     else 
     { 
      if (Selected == "b") 
      { 
       label2.Visible = true; 
      } 
     } 
    } 

回答

相關問題