把编辑器指派到列
使用内置编辑器的最普遍的方式是把它们指派到列。 这是典型的场景,因为列通常被呈现为包含相同类型取值的字段。 可以根据列的类型指派不同的编辑器。 把内置编辑器指派到列的步骤如下:
- 创建一个相应的表示所需内置编辑器的“repository 项”对象。
- 把“repository 项”添加到内部的或外部的存储库中。
- 把“repository 项”指派到 TreeListColumn.ColumnEdit 属性。
下面的插图展示了一个把不同编辑器指派到 TreeList 列的示例。
在设计时刻,TreeListColumn.ColumnEdit 属性提供了一个下拉窗口,允许快速指派内置编辑器。 此下拉窗口允许新建一个内置编辑器 (“repository 项”),或者选择一个现有的内置编辑器。 如果在设计时刻新建内置编辑器,则它被自动添加到树状列表的内部存储库中。
要获得更多关于存储库的信息,请参阅 内置编辑器 文档。
在默认情况下,通过 TreeListColumn.ColumnEdit 属性或 TreeList.CustomNodeCellEdit 事件指派到单元格的编辑器也可以用于编辑该单元格的内容。 如果需要把不同的编辑器用于内置编辑,则接管 TreeList.CustomNodeCellEditForEditing 事件。
示例
下面的示例演示了如何创建和调整一个新的编辑器。 通过 TreeListColumn.ColumnEdit 属性,此编辑器被绑定到“ShipCity”列。
下面的屏幕截图展示了代码的执行结果。
C# | 复制代码 |
---|---|
using DevExpress.XtraEditors.Repository; //Create a repository item which corresponds to a combo box editor. RepositoryItemComboBox riCombo = new RepositoryItemComboBox(); riCombo.Items.AddRange(new string[] {"London", "Berlin", "Paris"}); //Add the item to the internal repository treeList1.RepositoryItems.Add(riCombo); //Now you can define the repository item as an in-place column editor colShipCity.ColumnEdit = riCombo; |
Visual Basic | 复制代码 |
---|---|
Imports DevExpress.XtraEditors.Repository ' ... 'Create a repository item which corresponds to a combo box editor. Dim riCombo As RepositoryItemComboBox = New RepositoryItemComboBox riCombo.Items.AddRange(New String() {"London", "Berlin", "Paris"}) 'Add the item to the internal repository TreeList1.RepositoryItems.Add(riCombo) 'Now you can define the repository item as an in-place column editor colShipCity.ColumnEdit = riCombo |