2017-09-12 5 views
0

タイトルが示すように、私のコードは、少なくとも1つのチェックボックスがDataGridviewでチェックされているかどうかを検出するように設計されています。ある場合、ボタンが有効になります。そうでない場合、enabledプロパティはfalseになります。DataGridviewのチェックボックスをクリックするとボタンを有効にしますか?

public void validatecheck(object sender, DataGridViewCellEventArgs e) 
    { 
     var senderGrid = (DataGridView)sender; 

     if (senderGrid.Columns[e.ColumnIndex] is DataGridViewCheckBoxColumn && e.RowIndex >= 0) 
     { 

      foreach (DataGridViewRow row in dtgeducation.Rows) 
      { 
       if (Convert.ToBoolean(row.Cells[e.ColumnIndex].Value) == true) 
       { 
        btnaddclass.Enabled = true; 

        break; 
       } 

       else 
       { 
        btnaddclass.Enabled = false; 
       } 

      } 
     } 

このコードはまだ動作しません。たぶん私は本質的な部分を見落としているかもしれない。どんな助けでも大歓迎です。 :)

+0

"なぜこのコードは機能しないのですか?"質問はStackOverflowのトピック外です。 – dymanoid

+0

デバッガでコードをステップ実行しましたか? – PaulF

+0

「働いていない」とはどういう意味ですか?エラーが出ていますか?あなたは予期しない動作を見ていますか?コードをデバッグしようとしましたか? –

答えて

0

ビューモデルのboolプロパティをチェックボックスのIsCheckedプロパティにバインドし、そのプロパティの値を割り当ててボタンのEnabledプロパティを更新します。

関連する問題