在GridControl裡的Property Editor裡編輯欄位時,可以在欄位屬性中找到ColumnEdit,點選後會加入RepositoryItemCheckEdit物件,再下拉時展New結點可以看到CheckEdit,點選後該欄位就會顯示成CheckBox,再展開ColumnEdit可以編輯這個CheckBox的屬性,其中ValueChecked跟ValueUnchecked兩個屬性代表這個CheckBox被選取時的值可以自己修改。
不過這樣設定完卻只能單選,要複選的話還必在QueryCheckStateByValue事件裡做額外設定
可以在Property Editor左邊Repository->In-place Editor Repository找到剛剛加入的RepositoryItemCheckEdit,並且自行加入QueryCheckStateByValue事件,Code大致長得像這樣
private void repositoryItemCheckEdit1_QueryCheckStateByValue(object sender, DevExpress.XtraEditors.Controls.QueryCheckStateByValueEventArgs e) { string value = false.ToString(); if (e.Value != null) { value = e.Value.ToString(); } e.CheckState = value == true.ToString() ? CheckState.Checked : CheckState.Unchecked; e.Handled = true; } |
就是從e.Value去判斷給的值是什麼,如此在做DataBinding的時候也可以根據內容的不同決定要不要選取,例如單數要選取,偶數不用等等…
