2013-04-23 4 views
0

Я новичок в разработке настольных приложений.Button_Click() срабатывает дважды, если помещается в поле группы

У меня есть кнопка поиска, через которую сетка заполняется из записей базы данных.

Сначала я положил кнопку в поле группы и отладил программу, и обнаружил, что событие click стреляло дважды. Затем я поместил ту же кнопку из текстового поля и обнаружил, что событие запускается только один раз.

Мой Button_Click() событие содержит следующий код:

private void btnSearch_Click(object sender, EventArgs e) 
{ 
    string query = null; 

    if (txtBillNo.Enabled && txtBillNo.Text.Trim().Length != 0) 
    { 
     query = "Select BillNo,PartyName,City,State,FORMAT(BillDt,'dd-mm-yyyy')as Dt from BillMaster where BillNo=" + Convert.ToInt32(txtBillNo.Text.Trim()); 
     FillGrid(query); 
    } 

    else if (txtName.Enabled && txtName.Text.Trim().Length != 0) 
    { 
     query = "Select BillNo,PartyName,City,State,FORMAT(BillDt,'dd-mm-yyyy')as Dt from BillMaster where UCASE(PartyName) like '" + txtName.Text.Trim().ToUpper() + "'"; 
     FillGrid(query); 
    } 

    else 
    { 
     MessageBox.Show("Enter Value First"); 
     if (rdbName.Enabled) 
     { 
      txtName.Focus();  
     } 
     else if (rdbBillNo.Enabled) 
     { 
      txtBillNo.Focus(); 
     }    
    }     
} 

обработчик событий привязывается в случае Form_Load() с помощью:

btnSearch.Click+=new EventHandler(btnSearch_Click);

Что я должен сделать, чтобы стрелять событие щелчка после размещения кнопки в поле группы.
Пожалуйста, помогите.

+2

Вы абсолютно уверены, что подписка на событие не происходит в файле Designer.CS? –

+0

Это была моя мысль тоже @MatthewWatson .... – jordanhill123

+0

Да, сэр, я уверен, потому что в форме [Дизайн], когда я дважды нажимаю на кнопку поиска. Это позволяет мне писать код в 'private void btnSearch_Click_1 (object sender, EventArgs e)' block. @MatthewWatson –

ответ

1

Я думаю, что содержание вашего btnSearch_Click не имеет значения. Я почти уверен, что btnSearch.Click назначается дважды. Когда-нибудь в вашем и, возможно, где-то в другом месте, пропустите в своем файле кода?

+0

Я также проверил в Designer.cs и не обнаружил, что обработчик события не назначен для кнопки. @ Мартин Малдер –