Telerik RadGridView集合自定义编辑器

时间:2016-02-15 16:12:55

标签: c# wpf telerik telerik-grid radgridview

我有chains.click(get_ideas).perform() 绑定RadGridView ObservableCollection

TestType包含3名成员:

TestType

我在string TestString; Int TestInt; List<string> TestCollection; 添加了3条记录。

绑定有效,我可以看到记录。

当我尝试编辑表格时,我无法修改ObservableCollection成员单元格。

在winforms属性网格中,我添加了一个TestList

EditorAttribute

而且,使用自定义编辑器(在属性网格中)可以编辑该成员。

有没有让自定义编辑器在单元格编辑中工作?

1 个答案:

答案 0 :(得分:3)

您需要CellEditTemplate:Setting CellTemplate and CellEditTemplate

<telerik:RadGridView x:Name="MyGrid" AutoGenerateColumns="False" ItemsSource="{Binding TestTypeList}">
    <telerik:RadGridView.Columns>
        <telerik:GridViewDataColumn DataMemberBinding="{Binding TestString}" />
        <telerik:GridViewDataColumn DataMemberBinding="{Binding TestInt}" />
        <telerik:GridViewDataColumn DataMemberBinding="{Binding TestCollection}">
            <telerik:GridViewDataColumn.CellTemplate>
                <DataTemplate>
                    // Here give a template for the "TestCollection" when it is not in editing.
                </DataTemplate>
            </telerik:GridViewDataColumn.CellTemplate>
            <telerik:GridViewDataColumn.CellEditTemplate>
                <DataTemplate>
                    // Here give a template for the "TestCollection" when it is in editing.
                </DataTemplate>
            </telerik:GridViewDataColumn.CellEditTemplate>
        </telerik:GridViewDataColumn>           
    </telerik:RadGridView.Columns>
</telerik:RadGridView>

当你将简单类型绑定到DataMemberBinding时,Telerik会给你一个默认的&#34; CellTemplate&#34;和默认的&#34; CellEditTemplate&#34;对于绑定类型。

但是如果你将复杂类型绑定到DataMemberBinding,Telerik不知道如何对其进行模板化,那么你需要为正常状态提供自己的数据模板(CellTemplate)以及编辑状态(CellEditTemplate)。