Pressing the Enter key when a field editor is focused will scroll the vertical scrollbar to the topmost offset. This is reproducible when the properties are grouped. Also, the RenderMode should be set to Flat.
To work this around, change the RenderMode setting to Hierarchical right before the Enter key logic is executed and then return it back to Flat after some time.
private void RadPropertyGrid_PreviewKeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
var propertyGrid = (RadPropertyGrid)sender;
var currentMode = propertyGrid1.RenderMode;
propertyGrid.RenderMode = RenderMode.Hierarchical;
Dispatcher.BeginInvoke(new Action(() =>
{
propertyGrid.RenderMode = currentMode;
}));
}
When the Expression_Dark theme is applied to the RadPropertyGrid, selecting an item is hard to read, as the item's foreground is white and the selection state is in a similar color.
To work this around, use the following Style:
<Style TargetType="telerik:PropertyGridField">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Foreground" Value="Black"/>
</Trigger>
</Style.Triggers>
</Style>
Currently, the control allows you to search only for fields that have been expanded already. If a parent field was never expanded, the search won't look for its children.
Allow searching in not expanded fields.
Possibility to edit only the SelectedPropertyDefinition (like in Visual Studio)
When a RadPropertyGrid instance is placed inside a RadBusyIndicator, the StyleManager cannot apply the styles correctly and it causes an InvalidOperationException at runtime.
Workaround: Use the NoXaml version of the assemblies with the needed themes.
Behind the scene we need to update any changes made in the property grid, in a SQL Server database, too. With our current implementation we fire a database request if a property is edited in the property grid. This is fine if only one entity has been selected. If more than one entity has been selected (ProperytSetMode “Intersection”) a database request is fired for each entity if a property is edited. This is not very performant for us. We need an event like “EditEnded” to figure out when the PropertySetViewModel has updated all ViewModels. Then we are able to updated the necessary changes in the database in a single call.
If you have a data validation, and there is an invalid field with the red border around it, if you hide this field via the filtering feature or the collapsing its group, the validation red border (and the tooltip) disappears.
To resolve this, you will need to update the ErrorTemplate of the input field (the TextBox). You can do this in the FieldLoaded event handler.
private void RadPropertyGrid_FieldLoaded(object sender, Telerik.Windows.Controls.Data.PropertyGrid.FieldEventArgs e){ if (e.Field.Content is TextBox) { var editor = (TextBox)e.Field.Content; var bindingExpression = BindingOperations.GetBindingExpression(editor, TextBox.TextProperty); if (bindingExpression.ValidationError != null) { var errorTemplate = Validation.GetErrorTemplate(editor); Validation.SetErrorTemplate(editor, null); Validation.SetErrorTemplate(editor, errorTemplate); } }
Available in the 2017 R2 Release.