Unplanned
Last Updated: 19 Nov 2024 11:00 by Martin Ivanov
Currently, you can use the BackgroundGrid attached properties to customize the grid lines. However, the settings are applied to all lines, regardless their orientation - horizontal or vertical. Add different options for the different orientations. For example, instead of BackgroundGrid.LineStroke to have BackgroundGrid.HorizontalLinesStroke and BackgroundGrid.VerticalLinesStroke, or similar.
Completed
Last Updated: 12 Nov 2024 08:17 by ADMIN
Release Telerik UI for WPF 2024.4.1111 (2024 Q4)

This is a regressiion issue in the 2024.3.924 release of Telerik UI for WPF.
Save and load of the saved XML should result of the same item IDs for every RadDiagramItem (shapes, connections).

To work this around, you can create a custom SerializationService and override its DeserializeItems method, where you can change the "makeUnique" parameter.

The issue manifests also when doing drag/drop from the RadDiagramToolBox or any other custom drag drop implementation that uses the DiagramDropInfo class (which is automatically handled by the RadDiagram's drop internal code). In this case the custom service approach won't work because the drag/drop deserialization works with a separate instance of SerializationService (SerializationService.Default) which cannot be changed. In this case, you can subscribe RadDiagram to the DragDropManaged.Drop event and manually call the SerializationService.Default.DeserializeItems method.

 public class CustomSerializationService : SerializationService
 {
     public CustomSerializationService(IGraphInternal graph) : base(graph)
     {
     }

     public override IEnumerable<IDiagramItem> DeserializeItems(SerializationInfo serializationInfo, bool makeUnique = false)
     {
         makeUnique = false;
         return base.DeserializeItems(serializationInfo, makeUnique);
     }
 }

 public MainWindow()
 {
     InitializeComponent();

     this.diagram.ServiceLocator.Register<ISerializationService>(new CustomSerializationService(this.diagram));

     DragDropManager.AddDropHandler(this.diagram, OnDiagramDrop);
 }

 private void OnDiagramDrop(object sender, Telerik.Windows.DragDrop.DragEventArgs e)
 {
     var data = DragDropPayloadManager.GetDataFromObject(e.Data, typeof(DiagramDropInfo).Name);
     if (data is DiagramDropInfo)
     {
         SerializationService.Default.DeserializeItems(((DiagramDropInfo)data).Info, false);
     }
 }

Unplanned
Last Updated: 13 Sep 2024 15:21 by Martin Ivanov

The middle point in this context is a point that is located on the line segment that is positioned after the middle length of the line. Add a property on the RadDiagramConnection class that returns the middle point. The property should be DependencyProperty so it can be bound with OneWayToSource mode in order to be able to notify the bound view model (if such is presented).

Currently, you can get this information by combining the CalculateMiddlePointOfLine and AllPoints methods of the ConnectionUtilities class.

var allConnectionPoints = Telerik.Windows.Diagrams.Core.ConnectionUtilities.ConnectionUtilities.AllPoints(radDiagramConnection);
var startAndEndPoints = new Tuple<Point, Point>(radDiagramConnection.StartPoint, radDiagramConnection.EndPoint);
Point middlePoint = Telerik.Windows.Diagrams.Core.ConnectionUtilities.CalculateMiddlePointOfLine(startAndEndPoints, allConnectionPoints);

Unplanned
Last Updated: 11 Sep 2024 16:12 by Martin Ivanov
Currently, the StartPoint and EndPoint properties of RadDiagramConnection cannot be data bound when the binding is defined in a Style that targets RadDiagramConnection. This happens because the RadDiagram control is updating the Start/EndPoint properties using a local value setting which has a higher setting priority than any data bindings defined in a Style. This can be improved by replacing the local value settings with calls to the SetCurrentValue method of DependencyObject.
Completed
Last Updated: 01 Jul 2024 11:22 by ADMIN
Release 2024.2.701 (Preview)

In the Swimlane diagram example (Data Visualization -> Diagrams -> Swimlane) the application crashes, showing at least one but often more than one error message.

How to reproduce:

  • Open the Swimlane example.
  • Click the area that is labelled as "Process name" (also marked in the attached screenshot)
  • One or multiple Message boxes containing the exception message
{DependencyProperty.UnsetValue} is not a valid value for the Property "Background"

pop up (see other screenshot)

Declined
Last Updated: 20 Mar 2024 11:34 by Petar
The ExportToImage method of the RadDiagram control does not take into account transforms applied to the diagram items.
Unplanned
Last Updated: 20 Feb 2024 01:26 by Antonio

Currently, the print preview control provides only options for the current printer, the page orientation and the page size . Include the following options too:

 - Paper Format (Lettre, A4, etc.)
 - Paper Orientation (Portrait or Landscape)
 - Number of copies (1, 2, 3, ...)
 - Print Color Settings (Colors or Monochrome)
 - Margins
 - Resolution (DPI based on the capabilities of the printer)

Unplanned
Last Updated: 15 Feb 2024 10:41 by Martin Ivanov
Currently, when you select multiple shapes, you can rotate them altogether using the rotate icon displayed on top of the ManipulationAdorner visual (the rectangle that encloses the shapes). However, there is no property or a method that allows to programmatically provide a rotation angle for the adorner. 

Add a RotationAngle property or a Rotate() method or something similar that will automatically update the rotation of the ManipulationAdorner along with the shapes inside.
Unplanned
Last Updated: 23 Jan 2024 14:29 by ADMIN
If the ActiveTool of a RadDiagram instance is changed from a PointerTool to PanTool while a shape is being resized, shape will still be resizable when the mouse gets close to the resize rectangles. 
Unplanned
Last Updated: 21 Nov 2023 09:40 by Stenly

Add an option to modify the StartPoint and EndPoint properties of RadDiagramConnection instances via the SettingsPane.

 

This functionality can be achieved by modifying the default ControlTemplate of the SettingsPaneView element to include an additional RadTabItem instance in the RadTabControl element. In the additional RadTabItem, input controls can be used, such as the RadNumericUpDown element. These elements should modify properties that will be present in a custom LinkViewModelBase<NodeViewModelBase>> class. More specifically, the X and Y properties of the StartPoint and EndPoint properties of the RadDiagramConnection element.

The attached sample project shows the implementation of the above approach for achieving this requirement.

Unplanned
Last Updated: 20 Nov 2023 16:38 by Stenly

Add an option to customize the available colors in the SettingsPane control:

Unplanned
Last Updated: 20 Nov 2023 11:11 by Vladimir
Introduce the option for snapping connections while they are being drawn. 
Completed
Last Updated: 02 Aug 2023 05:55 by ADMIN
Release LIB 2023.2.807 (7 Aug 2023)
When performing an undo operation for restoring a deleted RadDiagramContainerShape containing a child shape, an InvalidOperationException is thrown. The scenario is reproduced when the RadDiagram is used in a databound scenario. 
Unplanned
Last Updated: 01 Aug 2023 07:11 by William
WPF Demo export as HTML does not work with specific examples
Completed
Last Updated: 24 May 2023 09:20 by ADMIN
ADMIN
Created by: Dinko | Tech Support Engineer
Comments: 0
Category: Diagram
Type: Bug Report
0

			
Completed
Last Updated: 19 Jan 2023 14:50 by ADMIN
Currently snapping to the grid is disabled when moving the mouse closer than 10 pixels to a shape. A constant can be exposed to control this distance.
Completed
Last Updated: 19 Jan 2023 14:50 by ADMIN
Release LIB 2022.3.1128 (28 Nov 2022)
Sometimes, when fast dragging a connector out of shape to create a new connection, connector might stay in Active state. This can also result in incorrect event args in ConnectionManupulationCompleted event leading to wrong application logic.
Completed
Last Updated: 19 Jan 2023 14:50 by ADMIN
An exception is raised when the active tool of the RadDiagram is ConnectorTool and a shape is clicked when its UseDefaultConnectors property is set to false.
Declined
Last Updated: 21 Nov 2022 09:19 by ADMIN
Created by: Bartosz
Comments: 2
Category: Diagram
Type: Bug Report
0

Hi,

In project we have noticed that sometimes for RadDiagram.ConnectionManipulationCompleted we receive unexpected values in event.

This problem is not systematic but it occurs often at the drag of new connection.

To make it reproducible for you I used CustomConnectors sample project from Diagram.

For easier analysis I recorded a video with bug and changes to CustomConnectors project.

 

Best regards,

Bartosz

Completed
Last Updated: 07 Jun 2022 08:05 by ADMIN
Release LIB 2022.2.613 (13 June 2022)

NullReferenceException is thrown when trying to save RadDiagram instance that contains a RadDiagramShape with its Geometry assigned to a GeometryGroup value. 

To work this around, you can flatten the GeometryGroup before setting the shape's Geometry property. This is done by calling the GetFlattenedPathGeometry() method of the GeometryGroup.

shape.Geometry = group.GetFlattenedPathGeometry();

1 2 3 4 5 6