-- Add ClearCache method to clear the undo-redo dictionaries used internally or -- make the undo-redo dictionaries auto clear when undo-redo stacks are cleared Available in LIB version: 2016.3.1114 Clear method of Diagram's UndoRedoService now clears the UndoRedo internal cache automatically. What's changed ? The public interface IDiagramContainerGeneratorInternal interface now adds ClearCache method: A) this.Diagram.UndoRedoService.Clear(); will clear the internal undoredo cache which stores model-container relations. Also this will clear the undo/redo command stacks. B) this.Diagram.ContainerGenerator as GenericContainerGenerator<RadDiagramItem>).ClearCache(); will clear ONLY the undoredo cache.
Use Bezier Connection. Change Start / End Handles with Mouse or with SetBezierHandles method in code. Rotate/ Drag the connection and notice it is being shifted / its geometry changes unexpectedly. Possible workaround override the RadDiagramConnection like so: public class CustomConnection : RadDiagramConnection { protected override void OnStartPointChanged(System.Windows.Point newValue, System.Windows.Point oldValue) { this.ConnectionPoints[0] = new Point( this.ConnectionPoints[0].X - newValue.X + oldValue.X, this.ConnectionPoints[0].Y - newValue.Y + oldValue.Y); base.OnStartPointChanged(newValue, oldValue); } protected override void OnEndPointChanged(Point newValue, Point oldValue) { this.ConnectionPoints[1] = new Point( this.ConnectionPoints[1].X - newValue.X + oldValue.X, this.ConnectionPoints[1].Y - newValue.Y + oldValue.Y); base.OnEndPointChanged(newValue, oldValue); } } Available in R3 2016 SP
When you serialize a bezier connection moved with mouse, the deserialization is not done -well - connection is not with the proper connection points. Possible workaround: private void diagram_ConnectionDeserialized_1(object sender, Telerik.Windows.Controls.Diagrams.ConnectionSerializationRoutedEventArgs e) { Point startBezier = (Point)Utils.ToPoint((e.SerializationInfo["start"].ToString())); Point endBezier = (Point)Utils.ToPoint((e.SerializationInfo["end"].ToString())); Dispatcher.BeginInvoke(new Action(() => { (e.Connection as RadDiagramConnection).SetBezierHandles(startBezier, endBezier); }), DispatcherPriority.Loaded); } private void diagram_ConnectionSerialized_1(object sender, Telerik.Windows.Controls.Diagrams.ConnectionSerializationRoutedEventArgs e) { e.SerializationInfo["start"] = Utils.ToInvariant(e.Connection.ConnectionPoints[0]); e.SerializationInfo["end"] = Utils.ToInvariant(e.Connection.ConnectionPoints[1]); } Available in LIB version: 2016.3.1010
Editing any diagram shape does not take into account the fontsize of the shape. A possible workaround is to wire to shape's Loaded event as below: private void RadDiagramTextShape_Loaded(object sender, RoutedEventArgs e) { RadDiagramTextShape shape = sender as RadDiagramTextShape; TextBox tBox = shape.ChildrenOfType<TextBox>().FirstOrDefault(); tBox.FontSize = shape.FontSize; } Available in LIB version: 2016.3.926
Available in R3 2016 Release
DiagramToolBox ItemsSource is set runtime. Selected Index is set to 0. This displays no items. Items are displayed on the next user selection in the ToolBox. The workaround is to surrond the setting of SelectedIndex with Dispatcher. Dispatcher.BeginInvoke(new Action(()=> this.tBox.SelectedIndex = 0), DispatcherPriority.Loaded); Available in R3 2016 Release
Shape is dropped onto ContainerShape and the container is auto-resized. When you press Ctrl + Z, the shape is removed, but the old size of the Container is not reverted. Expected : the container should return to its old size. When there is a nesting of containers and you drop a shape into in innermost container, Ctrl + Z will return the previos size of the container. Available in R3 2016 Official Release.
If you pan the Diagram on touch device the Pan event is not fired. Available in R3 2016 Release
Introducing Page size (A4, etc) concenpt and vertical and horizontal rulers
Available in LIB version: 2016.2.801
The settings pane doesn't take into account the scenario when its popup is opened close to the top or bottom bounds of the screen, in the calculation of its vertical position. Available in R2 2016 SP
Available in LIB version: 2016.2.516
Group of 3 containers A B and C is being dragged. B is nested in A, C is separate. Group is dragged by dragging B. Issue 1 => B goes into drop aware state with red border around it. Issue 2 => when releasing the mouse B and C become children of A. Will be available in R2 2016 Release.
Implement automatic-layout of Polytree (http://en.wikipedia.org/wiki/Polytree) graphs. Layout with multiple roots in single graph component. We added an SDK sample showing how you can layout such tree hierarchies in RadDiagram: https://github.com/telerik/xaml-sdk/tree/master/Diagram/MultipleRootsInSingleTreeLayout
Custom SettingsPane is designed to edit property from the shapes (or connections) DataContext via extensions:SettingsPaneView.EditorPropertyName="DataContext.ShapeName" kind of binding. If group of shapes are selected, the editing works only for the first selected shape but it should work for all select, just like when you edin non-databound diagram shapes and change their text for example. Available in LIB version: 2016.1.21
When you start resize operation on a grouped ContainerShape and Shape in it the Container shape size can not be shrink-ed more than the previous BottomRight position of the shape in it (despite that the shape size is changed and there is space for the collapsing). Available in LIB version: 2016.1.21
A stackOverflow exception is thrown when the diagram is layouted with AStarRouter, Sugiyama and connection bridges. Available in LIB version: 2015.3.1026
When using the Implicit styles approach, setting the ShapeStyle property based on RadDiagramShapeStyle does not work. ShapeStyle is not applied.
Diagram has no ContainerShapes. Layout returns different results when TreeLayoutSettings.IgnoreContainers is True / False. Same issue is produced when layout is sugiyama and sugiyamasettings' IgnoreContainers is True When True, the result is incorrect - every shape is treated like separate graph component. The fix is available in LIB Version 2015.1.0420.
ContainerShapes has connections connecting shapes in it. RouteConnections is True. After Expand Collapse - the ContainerShape has wrong size. The bug is introduced in Q1 2015. Available in LIB version: 2015.1.1603