PropertyGrid: Customize editors globaly

Grids for WPF Forum

Posted 1 month ago by BenjaminLopVic - France
Version: 24.1.1
Avatar

Hello,

In my PropertyGrid, I want to set "UseDisplayAttributes" to true for all my all my enum editors.

Currently, I'm using this code:

<grids:PropertyEditor PropertyType="sys:Enum">
    <grids:PropertyEditor.ValueTemplate>
        <DataTemplate>
            <editors:EnumEditBox Value="{Binding Value}" UseDisplayAttributes="True" />
        </DataTemplate>
    </grids:PropertyEditor.ValueTemplate>
</grids:PropertyEditor>

It does the job except when I use nullable enums, the editor no longer uses the "Description" attribute.

So i tried :

PropertyType="{shared:Nullable {x:Type sys:Enum}}"

But i get a TypeLoadException : GenericArguments[0], 'System.Enum', on 'System.Nullable`1[T]' violates the constraint of type 'T'.

Currently, on nullable enums, I'm using the following code, but I need to do it for each enum I want to use:

PropertyType="{shared:Nullable {x:Type mysNamespace:MyEnum}}"

Is there a better solution to force "UseDisplayAttributes" on all my EnumEditBox of my PropertyGrid ? 

Thanks.

Benjamin.

Comments (2)

Answer - Posted 1 month ago by Actipro Software Support - Cleveland, OH, USA
Avatar

Hello,

The /ProductSamples/GridsSamples/QuickStart/PropertyGridEditorsIntegration/MainControl.xaml file in our samples project shows an example of adding EnumPropertyEditor with UseDisplayAttributes set.  I wonder if doing that instead would work for your scenario instead of what you are currently doing.


Actipro Software Support

Posted 1 month ago by BenjaminLopVic - France
Avatar

Hello,

Thank you, that's exactly what I was looking for.

Best regards.

 
The latest build of this product (v24.1.2) was released 14 days ago, which was after the last post in this thread.

Add Comment

Please log in to a validated account to post comments.