Hi,
I created a project that wanted to implement custom connections and implemented mvvm. But I ran into a problem, the connection line position changed when I reopened the Diagram after saving. Figure 1 is before saving, and Figure 2 is opened after saving. I set the SourceConnectorPosition and TargetConnectorPosition properties as follows:
<Style TargetType="{x:Type telerik:RadDiagramConnection}" x:Key="CommonDiagramConnectionStyleBase" BasedOn="{StaticResource RadDiagramConnectionStyle}">
<Setter Property="SourceCapType" Value="{Binding SourceCapType, Mode=OneWayToSource}" />
<Setter Property="TargetCapType" Value="{Binding TargetCapType, Mode=OneWayToSource}" />
<Setter Property="Visibility" Value="{Binding Visibility, Mode=OneWayToSource}" />
<Setter Property="Position" Value="{Binding Position, Mode=OneWayToSource}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=OneWayToSource}" />
<Setter Property="SourceConnectorPosition" Value="{Binding SourceConnectorPosition, Mode=TwoWay}" />
<Setter Property="StartPoint" Value="{Binding StartPoint, Mode=TwoWay}" />
<Setter Property="TargetConnectorPosition" Value="{Binding TargetConnectorPosition, Mode=TwoWay}" />
<Setter Property="EndPoint" Value="{Binding EndPoint, Mode=TwoWay}" />
<Setter Property="ZIndex" Value="{Binding ZIndex, Mode=OneWayToSource}" />
<!--<Setter Property="Background" Value="{StaticResource DiagramShape_Connection_Background}" />
<Setter Property="Stroke" Value="{StaticResource DiagramShape_Connection_BorderBrush}" />
<Setter Property="StrokeThickness" Value="1" />
<Setter Property="ZIndex" Value="{StaticResource connectionZIndex}" />
<Setter Property="HorizontalContentAlignment" Value="Center" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<c:If Condition="WPF">
<Setter Property="FocusVisualStyle" Value="{x:Null}" />
</c:If>-->
</Style>

Hello,
For other controls, there is an page in the help file for the localization of the control, listing the resource keys.
There is no such information for RadWindow.
Can you give us the resource keys?
Hi,
I'm binding the ItemSource with ListCollectionView ....I noted that changing the selection on TreeListView the CurrentItem is not updated. Also the MoveCurrentTo method doesn't work. I use the some procedure with RadGridView and works fine!
How I can resolve this issue?
Hello,
When a worksheet shows, not all columns or rows would display. But clicking on column header, like "A", "B", or row number "1","2", etc. is going to select the whole row or column. Is there a way to disable this kind of row and column selection? Or, what's the event of clicking on the column header and row number?
Thanks.

I am having an issue using the .NET Core components within VS 2019 Professional. It is the latest build of the components.
When I am trying to use the editor the XAML designer is throwing an unhandled exception 'System.InvalidOperationException - The contained "ItemCollection" is not an ancestor of "Window".
I have created a youtube window showing the issue.
https://www.youtube.com/watch?v=fm1isYifGzY&feature=youtu.be
Many thanks,
Rob

Hi,
I need to style the FontPropertiesDialog.
I want to remove the theme, set the background and foreground color.
Where do I find the template of this dialog?
regards
Dietmar

The article about using generic sort descriptor for custom sorting is super unclear
https://docs.telerik.com/devtools/wpf/controls/radgridview/sorting/how-to/generic-descriptor
The SortDescriptor<Club, int> returns a simple number that is just the StadiumCapacity of the club, but how do you sort on more complex data using the SortDescriptor or ColumnSortDescriptor? E.g. using a comparison function?
We have one column that we want to override the standard sorting, but it's part of a multi-column sorting and we have to be able to load the initial sorting state, so the example of just sorting the item source in the sorting event and then just canceling the even is not sufficient.
We also tried deriving from the ColumnSortDescriptor and overriding CreateSortKeyExpression, but it is not clear how to use the parameter expression, or build on the SortKeyExpression created by the base.
Hi,
how can I use the FilterPopUp if I set ShowColumnHeaders="false"?
I have a seperate filter icon which call this code behind:
MyGridView.ChildrenOfType<FilteringDropDown>().First().IsDropDownOpen = true;
With ShowColumnHeaders="true" I can open the FilterPopUp by clicking my icon or the build in filter icon. If I set ShowColumnHeaders="false" I'll get a System.InvalidOperationException: 'Sequence contains no elements' exception.

The fluent theme auto hides the vertical scrollbars of the grid, is it possible to change this behaviour so that they always show?
I have tried setting ScrollViewer.VerticalScrollBarVisibility="Visible" in the grid properties but it makes no difference, I think it must be coming from deeper the theme.
Thanks,
Richard
I am attempting to create a composite filter in a RadGridView.
I have a column which is a string value (ReasonTrigger) and a column which is a date column (Create Timestamp).
If I specify a single filter (not a composite) and use a Distinct Value for the ReasonTrigger, the dropdown for that column displays all of the possible values for that column for the entire collection associated with the grid. The correct data displays which are only the rows for the alert type. See attached file - WorkingDropdown.png.
I also need to be able to further filter by specifying a Create Timestamp which is within the last 24 hours. If I add a second individual filter (not using composite), the ReasonTrigger dropdown only shows the type that qualifies based on the ReasonTrigger and the date criteria.
If I use a composite combining the ReasonTrigger and the Create Timestamp, the same behavior occurs as the previous example. The drop down only contains the distinct value specified and the correct rows but does not show the other distinct values (which should appear but not be checked). See attached files - NotWorkingDropDown.png and NotWorkingDropDown2.png
Methods below.
Thank you.
Tom
//*************************************************************************************************************
// No composite - single distinct value filter - attached file - WorkingDropDown.png
// this works well for the AlertType (see dropdown image attached - WorkingDropdown.PNG)
private void RefreshGridColumnsByFilterNoComposite()
{
Telerik.Windows.Controls.GridViewColumn countryColumn = this.radGridViewAlerts.Columns.AsQueryable<Telerik.Windows.Controls.GridViewColumn> ().Where(c => c.Name == "ReasonTrigger").FirstOrDefault();
Telerik.Windows.Controls.GridView.IColumnFilterDescriptor countryFilter = countryColumn.ColumnFilterDescriptor;
this.radGridViewAlerts.FilterDescriptors.SuspendNotifications();
countryFilter.DistinctFilter.AddDistinctValue(AlertTypeDescription);
this.radGridViewAlerts.FilterDescriptors.Add(countryFilter);
this.radGridViewAlerts.FilterDescriptors.ResumeNotifications();
}
//*****************************************************************************************
// Composite Filter - Distinct filter and date filter combined into a composite filter - attached files - NotWorkingDropdown.png and NotWorkingDropdown2.png
private void RefreshGridColumnsByFilterComposite()
{
Telerik.Windows.Data.FilterDescriptor createdInLast24Hours;
CompositeFilterDescriptor newForSpecificAlertTypeCompositeFilter;
Telerik.Windows.Controls.GridViewColumn reasonTriggerColumn = this.radGridViewAlerts.Columns.AsQueryable<Telerik.Windows.Controls.GridViewColumn>().Where(c => c.Name == "ReasonTrigger").FirstOrDefault();
Telerik.Windows.Controls.GridView.IColumnFilterDescriptor countryFilter = reasonTriggerColumn.ColumnFilterDescriptor;
newForSpecificAlertTypeCompositeFilter = new CompositeFilterDescriptor();
this.radGridViewAlerts.FilterDescriptors.SuspendNotifications();
// add distinct value filter for
countryFilter.DistinctFilter.AddDistinctValue(AlertTypeDescription);
newForSpecificAlertTypeCompositeFilter.FilterDescriptors.Add(countryFilter);
// add filter for create timestamp
createdInLast24Hours = new Telerik.Windows.Data.FilterDescriptor("CreateTimestamp", Telerik.Windows.Data.FilterOperator.IsGreaterThan, query.GetSQLServerDatetime().AddHours(-24));
newForSpecificAlertTypeCompositeFilter.FilterDescriptors.Add(createdInLast24Hours);
newForSpecificAlertTypeCompositeFilter.LogicalOperator = FilterCompositionLogicalOperator.And;
this.radGridViewAlerts.FilterDescriptors.Add(newForSpecificAlertTypeCompositeFilter);
this.radGridViewAlerts.FilterDescriptors.ResumeNotifications();
}