2016-08-30 3 views
0

У меня есть CheckBoxList, который отображает данные на действие selectedIndexChange DropDownList. Все работает правильно. Я проверил его в событии с нажатием кнопки. Но Когда я использую его с selectedIndexChange, ничего не происходит. Я не получаю никаких ошибок или исключений. Я также включил свойство AutoPostBack.Как отобразить CheckBoxList на selectedIndexИзменить действие DropDownList?

Вот мой код

<asp:CheckBoxList ID="chklstKPI" style="width:auto; height:auto; float:right" runat="server" AutoPostBack="True"> 
 
</asp:CheckBoxList>

код CheckBoxList

public void loadCheckBoxPanel() 
{ 
     DataSet ds = new DataSet(); 
     string cName = ddlCompName.SelectedValue.ToString(); 
     ds = db.fillCheck(cName); 

     chklstKPI.DataSource = ds.Tables[0]; 
     chklstKPI.DataTextField = "COMPETITION_KPI"; 
     chklstKPI.DataValueField = "COMPETITION_KPI"; 
     chklstKPI.DataBind(); 

} 

Я не добавить запрос.

+0

Действительно ли это отправляет сообщение? Я не думаю, что вы связали 'loadCheckBoxPanel' с' SelectedIndexChanged'. –

+0

Я вызвал метод внутри действия SelectedIndexChanged – Mike

+0

Тогда вы должны иметь 'OnSelectedIndexChanged =" MethodNameHere "' в своем коде как часть определения CheckBoxList, и я его не вижу. Что-то вроде: ' ' –

ответ

0
bool isLoading = true;  
private void Form1_Load(object sender, EventArgs e) 
    { 
     chklstKPI.Style.Visibility="hidden"; 
     chklstKPI.Style.Displpay="none"; 
     myList.OnSelectedIndexChanged += performCheckBoxAction; 
     myList.SelectedIndex=0; 
     isLoading = false;    
    } 
protected void performCheckBoxAction(object sender, EventArgs e){ 
    if(isLoading==false){ 
     isLoading = true; 
     chklstKPI.Style.visibility="visible"; 
     chklistKPI.Style.display="show"; 
     isLoading=false; 
    } 
}