2016-04-27 12 views
0

Windowsフォームアプリケーションを作成し、グリッドの最初の列としてDataGridViewCheckBoxColumnを挿入しましたが、既定値を "checked"に設定すると失敗しました。私は列を挿入した後、ループの両方で、GridviewのDefaultValuesNeededイベントに設定しようとしました。これを行う簡単な方法はありますか、それとも私が紛失しているものがありますか?WinForm app:DataGridViewCheckBoxColumnの既定値を設定できません

私のコードは次のとおりです。私は、チェックボックスをループして、その時点でそれらを設定し、フォームのLoadイベントにコードを追加することによってこの問題を解決することができた

private void FillDataGrid() 
    { 
     BAFarmer baobj = new BAFarmer(); 
     gvFarmers.AutoGenerateColumns = true; 
     gvFarmers.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; 
     gvFarmers.DataSource = baobj.GetAllFarmersCol(); 
     gvFarmers.Enabled = true; 
     gvFarmers.ReadOnly = false; 

     DataGridViewCheckBoxColumn checkColumn = new DataGridViewCheckBoxColumn(); 
     checkColumn.Name = "Include"; 
     checkColumn.ValueType = typeof(Boolean); 
     checkColumn.HeaderText = "Include"; 
     checkColumn.Width = 50; 
     checkColumn.ReadOnly = false; 
     checkColumn.FillWeight = 10; //if the datagridview is resized (on form resize) the checkbox won't take up too much; value is relative to the other columns' fill values 
     checkColumn.ThreeState = false; 
     checkColumn.TrueValue = true; 
     checkColumn.FalseValue = false; 


     gvFarmers.Columns.Insert(0, checkColumn); 

     foreach (DataGridViewRow row in gvFarmers.Rows) 
     { 
      row.Cells[checkColumn.Name].Value = true; 
     } 

    } 

答えて

0

foreach (DataGridViewRow row in gvFarmers.Rows) 
{ 
    DataGridViewCheckBoxCell chk = DataGridViewCheckBoxCell)row.Cells["Select"]; 
    chk.Value = true; 
} 
関連する問題