Completed
Last Updated: 31 Jan 2024 11:39 by ADMIN
Release 2024 Q1 (2024.1.130)
I have problem with your default PropertyGridDropDownListEditor. When the dropdown initially appears at 175% scaling, there's excessive empty space at the bottom of the values list.
Completed
Last Updated: 31 Jan 2024 11:39 by ADMIN
Release 2024 Q1 (2024.1.130)
select two items in the grid, click on the ValueI in the MS GridView then press ESC and click again on ValueI: the cell is always empty.
Do the same thing in your RadPropertyGrid. The first time you get 0, the second time -2147483648.
Completed
Last Updated: 31 Jan 2024 11:39 by ADMIN
Release 2024 Q1 (2024.1.130)
Add the ReadOnly flag to true at the property of custom TestClass.
If you select a single object the this property is ReadOnly but if you select more than one objects it isn't ReadOnly anymore.
Completed
Last Updated: 20 Nov 2023 07:43 by ADMIN
Release R3 2023 SP1 (2023.3.1114)

Hello,

RadPropertyGrid does not properly intersect properties when what is set as SelectedObjects implements the ICustomTypeDescriptor interface. However, the .Net Framework PropertyGrid does not have this problem.

To reproduce the problem, use the attached project.

Completed
Last Updated: 23 Sep 2022 13:07 by ADMIN
Release R3 2022

When setting SelectedObject a ReadOnlyAttribute applies to the grid. But when wrapping it in an object[] and assign it to SelectedObjects the grid allows editing.

Sample application included.

Completed
Last Updated: 23 Sep 2022 13:07 by ADMIN
Release R3 2022

Currently, the only possible way to set the value to null is to select the whole text and press the Delete key.

If the value is cleared by the backspace key, it is restored when the control loses focus.

If the value is cleared by multiple times clicking the delete key and the cursor is in the first position, the previous value is restored when the control loses focus.

Workaround:
Subscribe to the TextChanged event of the spin editor and explicitly set the NullableValue of the BaseSpinEditorElement:

this.radPropertyGrid1.EditorInitialized += this.RadPropertyGrid1_EditorInitialized;

private void RadPropertyGrid1_EditorInitialized(object sender, PropertyGridItemEditorInitializedEventArgs e)
{
    if (e.Editor is PropertyGridSpinEditor spinEdit)
    {
        if (spinEdit.EditorElement is BaseSpinEditorElement editorElement && editorElement.EnableNullValueInput)
        {
            editorElement.TextChanged -= this.EditorElement_TextChanged;
            editorElement.TextChanged += this.EditorElement_TextChanged;
        }
    }
}

private void EditorElement_TextChanged(object sender, EventArgs e)
{
    if (sender is BaseSpinEditorElement editorElement && string.IsNullOrWhiteSpace(editorElement.Text))
    {
        editorElement.NullableValue = null;
    }
}

Unplanned
Last Updated: 25 Mar 2021 08:39 by ADMIN

Please run the sample project on a monitor with 150 DPI scaling. You will notice that the first time the drop down is not scaled properly and it is clipped. However, each next opening of the drop down, the popup is scaled correctly:

Unplanned
Last Updated: 24 Jan 2021 20:59 by Luca

The clients needs to use a PropertyGridDropDownListEditor and confirms the new value whenever a new selection is made. The attached gif file illustrates how to replicate the error using the following code snippet:

        public RadForm1()
        {
            InitializeComponent();

            this.radPropertyGrid1.SelectedObject = this; 
            this.radPropertyGrid1.EditorInitialized += radPropertyGrid1_EditorInitialized; 
        } 

        private void radPropertyGrid1_EditorInitialized(object sender, PropertyGridItemEditorInitializedEventArgs e)
        {
            PropertyGridDropDownListEditor ddl = e.Editor as PropertyGridDropDownListEditor;
            if (ddl != null)
            {
                ddl.LoopValuesOnDoubleClick = false;
                BaseDropDownListEditorElement element = ddl.EditorElement as BaseDropDownListEditorElement;

                if (element != null)
                { 
                    element.SelectedValueChanged -= Element_SelectedValueChanged;
                    element.SelectedValueChanged += Element_SelectedValueChanged;
                }
            }
        }
 
        private void Element_SelectedValueChanged(object sender, Telerik.WinControls.UI.Data.ValueChangedEventArgs e)
        {
            this.radPropertyGrid1.EndEdit();
        }

Workaround:

        public RadForm1()
        {
            InitializeComponent();

            this.radPropertyGrid1.SelectedObject = this;  

            this.radPropertyGrid1.ValueChanged += RadPropertyGrid1_ValueChanged;
        }

        private void RadPropertyGrid1_ValueChanged(object sender, EventArgs e)
        {
            if (this.radPropertyGrid1.ActiveEditor is PropertyGridDropDownListEditor)
            {
                this.radPropertyGrid1.EndEdit();
            }
        }

Unplanned
Last Updated: 16 Oct 2020 11:01 by ADMIN

Use the following code snippet and try to edit the Height. You will notice that the sub-items' order is changed:

            RadPropertyStore store = new RadPropertyStore();
            PropertyStoreItem sizeItem = new PropertyStoreItem(typeof(System.Drawing.Size), "Size", new System.Drawing.Size(100, 25), "The size of the control in pixels.", "Layout");
            store.Add(sizeItem);

            this.radPropertyGrid1.SelectedObject = store;
            this.radPropertyGrid1.SortOrder = SortOrder.Ascending;
            this.radPropertyGrid1.PropertySort = PropertySort.Alphabetical;

Declined
Last Updated: 17 Aug 2020 14:27 by ADMIN

1. Create a custom property item

2. Enable grouping

3.Scroll up and down

4.NullReferenceException occurs

Unplanned
Last Updated: 16 Jul 2020 06:00 by ADMIN

Hello, 

we are trying to use RadPropertyGrid to show the properties of some objects listed in a RadGrdiView. 

We use ExpandableObject to expand our custom property, but we have some problems when we try to show the properties of multiple selected items, when the values of the attribute of the property are not the same in all the selected objects. We tried to use PropertyGrid of Winform and we don't have this problem. 

Thank you.

Declined
Last Updated: 30 Nov 2020 14:43 by ADMIN
Created by: Yusi
Comments: 4
Category: PropertyGrid
Type: Bug Report
0

Problem: I'd like to filter the properties to be displayed by their category names defined by the Category attribute. Based on the doc here (https://docs.telerik.com/devtools/winforms/controls/propertygrid/features/filtering), my understanding is to add a FilterDescriptor like this: New FilterDescriptor ("Category", FilterOperator.Contains, "some category name"). But it turned out to only filter by property name, not category name. Any misunderstanding or possible issue? Thank you for looking into this.

Reproduce:

1. Define a class like this:

    Private Class TestClass
        <Category("Cat1")> Public Property Property1 As Integer = 1
        <Category("Cat1")> Public Property Property2 As String = "Test 2"
        <Category("Cat2")> Public Property Property3 As String = "Test 3"
    End Class

2. Initialize a RadPropertyGrid in the Form.Load event:

        Dim testObj As New TestClass
        RadPropertyGrid1.EnableFiltering = True
        Dim filter As New FilterDescriptor("Category", FilterOperator.Contains, "2")
        RadPropertyGrid1.FilterDescriptors.Add(filter)
        RadPropertyGrid1.SelectedObject = testObj

3. The right property to be displayed should be Property3, but it turned out to be Property2

 

Example project: attached.

Thank you team!

 

Completed
Last Updated: 10 Oct 2018 10:07 by Dimitar
Use the editor from the following article to reproduce: https://docs.telerik.com/devtools/winforms/propertygrid/editors/using-custom-editor

Workaround:
void TrackBarEditor_ValueChanged(object sender, EventArgs e)
{
    PropertyGridItemElement owner = this.OwnerElement as PropertyGridItemElement;

    if (owner != null)
    {
        var method = owner.PropertyTableElement.GetType().GetMethod("OnValueChanged", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
        method.Invoke(owner.PropertyTableElement, new object[] { this, EventArgs.Empty });

    }
}
Completed
Last Updated: 26 Nov 2018 11:28 by ADMIN
To reproduce: run the attached sample project and follow the steps from the gif file.

Workaround: cancel the edit operation when handling the MouseDown event of RadPropertyGrid:

        private void radPropertyGrid1_MouseDown(object sender, MouseEventArgs e)
        {
            var elementUnderMouse = this.radPropertyGrid1.ElementTree.GetElementAtPoint(e.Location).FindAncestor<RadScrollBarElement>();
            if (elementUnderMouse!=null)
            {
                this.radPropertyGrid1.CancelEdit();
            } 
        }
Completed
Last Updated: 21 Jun 2018 15:08 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 2
Category: PropertyGrid
Type: Bug Report
2
To reproduce:

Public Class RadForm1
    Sub New()        
        InitializeComponent()
        RadPropertyGrid1.SelectedObject = New MyProperties
    End Sub

    Public Class MyProperties

        Private _height As Integer = 70
        <Browsable(True)> <Category("Rows")> <DisplayName("Height")> _
        <Description("Sets the height of the row. Range 70 to 200.")> _
        <RadRange(70, 200)> _
        Public Property Height() As Integer
            Get
                Return _height
            End Get
            Set(ByVal Value As Integer)
                _height = Value
            End Set
        End Property
    End Class
End Class

When you activate the editor you will notice that you are allowed to enter values outside the specified range 7-200.

Workaround:

AddHandler Me.RadPropertyGrid1.EditorInitialized, AddressOf PropertyGridEditorInitialized

    Private Sub PropertyGridEditorInitialized(sender As Object, e As PropertyGridItemEditorInitializedEventArgs)
        Dim spinEditor As PropertyGridSpinEditor = TryCast(e.Editor, PropertyGridSpinEditor)
        If spinEditor IsNot Nothing Then
            spinEditor.MinValue = 70
            spinEditor.MaxValue = 200
        End If

    End Sub
Completed
Last Updated: 01 Jun 2018 11:57 by Dimitar
How to reproduce: associate the control with an object having a Font property. It can be the form itself, then try and change the font-size, e.g: -1.

The standard property grid displays a message box with the error.

Workaround handle the RadPropertyGrid.EditorInitialized event:
private void RadPropertyGrid_EditorInitialized(object sender, PropertyGridItemEditorInitializedEventArgs e)
{
    PropertyGridSpinEditor editor = e.Editor as PropertyGridSpinEditor;
    if (editor != null && e.Item.Parent != null && e.Item.Parent.Name == "Font" && e.Item.Name == "Size")
    {
        editor.MinValue = 1;
    }
}

Completed
Last Updated: 05 Jun 2018 11:26 by Dimitar
To reproduce:

            this.radPropertyGrid1.SelectedObject = this;             
            this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.MinSize = new Size(0, 60);

Please refer to the attached gif file.

Workaround:

            this.radPropertyGrid1.SelectedObject = this;             
            this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.MinSize = new Size(0, 60);
            this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.HelpTitleElement.MinSize = new Size(0,20);

            this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.HelpTitleElement.PropertyChanged += HelpTitleElement_PropertyChanged;

        private void HelpTitleElement_PropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName == "Bounds")
            {
                if (this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.HelpContentElement.Location.Y != 20)
                {
                    this.radPropertyGrid1.PropertyGridElement.SplitElement.HelpElement.HelpContentElement.Location = new Point(0, 20);
                }
            }
        }

Note: the description element may be floating but it doesn't overlap the title. 
Unplanned
Last Updated: 30 Apr 2018 11:26 by ADMIN
ADMIN
Created by: Dess | Tech Support Engineer, Principal
Comments: 0
Category: PropertyGrid
Type: Bug Report
1
To reproduce:

    Sub New()

        InitializeComponent()

        Dim intItem As New PropertyStoreItem(GetType(Integer), "Integer", 1)
        Dim floatItem As New PropertyStoreItem(GetType(Single), "Float", 1.0F, "Property storing a floating point value.")
        Dim stringItem As New PropertyStoreItem(GetType(String), "String", "telerik", "Property storing a string value", "Telerik")
        Dim fontItem As New PropertyStoreItem(GetType(Font), "Font", New Font("Arial", 12, FontStyle.Italic), "Property containing Font value")

        fontItem.Attributes.Add(New ReadOnlyAttribute(True))
        floatItem.Attributes.Add(New ReadOnlyAttribute(True))
        Dim store As New RadPropertyStore
        store.Add(intItem)
        store.Add(floatItem)
        store.Add(stringItem)
        store.Add(fontItem)
        Me.RadPropertyGrid1.SelectedObject = store
    End Sub

Try to edit either the "Float" or the "Font" property. The editor will be activated although it doesn't have to.

Workaround: cancel the Editing event

    Private Sub RadPropertyGrid1_Editing(sender As Object, e As PropertyGridItemEditingEventArgs)
        If e.Item.Name = "Font" Then
            e.Cancel = True
        End If 
    End Sub
Completed
Last Updated: 21 Jun 2018 14:41 by ADMIN
Use attached to reproduce. 

Workaround
radPropertyGrid1.ItemSpacing = 1;
Unplanned
Last Updated: 20 Mar 2018 08:26 by ADMIN
ADMIN
Created by: Dimitar
Comments: 0
Category: PropertyGrid
Type: Bug Report
1
Use attached to reproduce.
- Type 'n' in the search bar 
- "Name" is not found

1 2 3 4 5