嗨 我有以下要求: winform的devexpress網格控件。 這個網格的第1列是一個repositoryItemCheckedComboBoxEdit,我怎麼能得到當前行,然後爲這個行重置repositoryItemCheckedComboBoxEdit的數據源?我可以爲網格中的列設置數據源,只能爲一個特定的行設置數據源嗎?
回答
這樣的任務通常使用GridView的ShownEditor事件來實現。您應該確定當前重點列和其FieldName(GridView.FocusedColumn.FieldName),然後根據此記錄的另一個單元格中保存的值更改編輯器的DataSource屬性。即
private void gridView1_ShownEditor(object sender, EventArgs e) {
GridView gridView = sender as GridView;
if(gridView.FocusedColumn.FieldName == "YourField") {
CheckedComboBoxEdit edit = gridView.ActiveEditor as CheckedComboBoxEdit;
object value = gridView.GetRowCellValue(gridView.FocusedRowHandle, "AnotherColumn");
// filter the datasource and set the editor's DataSource:
edit.Properties.DataSource = FilteredDataSource;// your value
}
}
此外,請看看How to filter a second LookUp column based on a first LookUp column's value文章,其中類似的任務已解決。
您可以處理FocusedRowChanged
事件,然後根據視圖的GetFocusedRow()
設置數據源。
您可能需要具有完整數據源的獨立編輯器才能在未聚焦的列中顯示值,並處理CustomRowCellEditForEditing
以在編輯模式下使用子集。
嗨,如果我有另一個column2是一個repositoryItemComboBox,是否有可能根據在repositoryItemComboBox中選擇的值在repositoryItemCheckedComboBoxEdit中填充不同的項目? – spspli 2011-05-17 21:12:17
@sps:是的;按照我剛纔所說的去做。 (或者'GetFocusedRow()'或者調用'GetFocusedRowCellValue()') – SLaks 2011-05-17 21:12:56
嗨有沒有我可以參考的任何示例或類似的東西?我不熟悉這個GetCustomCellEditForEditing – spspli 2011-05-17 21:16:57
- 1. 爲combobox設置數據源
- 2. 在內置的WPF DataGrid中,我可以爲DataGridTemplateColumn設置數據源嗎?
- 3. BindingSource,設置數據源,然後設置一個新的數據源
- 4. 設置數據源
- 5. 設置數據源爲MediaPlayer的
- 6. 將NSMutableArray設置爲NSTableView的數據源
- 7. asp.net的GridView設置爲null,數據源
- 8. 將gridview的數據源設置爲無綁定的數據表
- 9. 如何爲存儲庫設置特定的數據源?
- 10. 你可以在「connectionDidFinishLoading」中設置tableView數據源的值嗎?
- 11. 設置數據源後更改數據網格視圖列的數據類型
- 12. 將數據網格中的列設置爲不可見
- 13. 爲SQL Compact 4設置EF4數據源
- 14. Waavi /翻譯源設置爲數據庫,
- 15. 爲jQuery數據表列動態設置數據源
- 16. 設置特定的數據網格單元作爲超鏈接
- 17. C#中設置的數據源的DataGridView,更新源數據表
- 18. 設置一個C#的datagridview數據源爲空
- 19. 如何設置數據源?
- 20. 錯誤設置數據源
- 21. Spring + MyBatis - 設置數據源
- 22. UTableView數據源設置
- 23. 將一個gridview的列值設置爲另一個gridview的數據源
- 24. 我可以在網格中設置中心子嗎?沒有數據網格
- 25. 如何在JavaScript中設置列表爲劍道網格數據源?
- 26. 我可以在SQL中爲特定列設置公式嗎?
- 27. 將viewModel設置爲表視圖數據源是錯誤的嗎?
- 28. 可以爲多個數據源配置persistence.xml嗎?
- 29. 將WPF數據網格源設置爲一組字符串數組
- 30. 將數據設置爲不帶Ajax的Kendo數據源
嗨,那麼數據源更改只發生在我想顯示我的字段的編輯器。當我更改「AnotherColumn」的值時,如何清除我的字段中的當前值? – spspli 2011-05-18 13:43:41
這可以使用以下代碼完成:gridView.SetRowCellValue(gridView.FocusedRowHandle,gridView.Columns [「YourField」],null); – 2011-05-18 13:52:32
我在這裏有一個問題:實際上我試圖使用repositoryItemCheckedComboBoxEdit.Items.Clear();我發現我也可以通過這種方式清除我的字段:CheckedComboBoxEdit edit = gridView.ActiveEditor CheckedComboBoxEdit; \t \t \t \t edit.Properties.Items.Clear();在使用這兩種方法時以及何時應使用您提供的方法時,是否有解釋使用方法? – spspli 2011-05-18 15:29:07