Currently, the content of RadDiagramShape element alignment can be changed via its HorizontalContentAlignment and VerticalContentAlignment. However, in RadDiagramTextShape, those properties don't take effect. Instead the text content is always centered.
At this point, you can achieve this requirement, by extracting the ControlTemplate of RadDiagramTextShape and bind the corresponding properties of the ContentPresenter to the parent shape. For example:
<ContentPresenter x:Name="NormalContent"
Margin="{TemplateBinding Padding}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
Available in R3 2016 Release
The AStar routing does not calculate the RouterInflation for shapes which are located in collapsed ContainerShape.
As a workaround, you can create a custom class which derives from RadDiagramConnector and override the Serialize() method. public class CustomConnector : RadDiagramConnector { static CustomConnector() { DefaultStyleKeyProperty.OverrideMetadata(typeof(CustomConnector), new FrameworkPropertyMetadata(typeof(CustomConnector))); } public override SerializationInfo Serialize() { var info = new Telerik.Windows.Diagrams.Core.SerializationInfo(this.GetType()); if (this.Name != null) info[Telerik.Windows.Diagrams.Core.SerializationConstants.ConnectorName] = this.Name; info[Telerik.Windows.Diagrams.Core.SerializationConstants.Offset] = this.Offset.ToInvariant(); if (Telerik.Windows.Controls.DependencyObjectExtensions.IsLocalValueSet(this, RadDiagramConnector.WidthProperty)) info[Telerik.Windows.Diagrams.Core.SerializationConstants.Width] = this.Width.ToInvariant(); if (Telerik.Windows.Controls.DependencyObjectExtensions.IsLocalValueSet(this, RadDiagramConnector.HeightProperty)) info[Telerik.Windows.Diagrams.Core.SerializationConstants.Height] = this.Height.ToInvariant(); this.SerializePrimitives(info); return info; } } }
Most problematic issue when container can contains a container inside of it.
In mvvm demo project i modified load/save button to Clear diagram and display different content.
It works but after few click there is a recurrence call to update Z indices.
The reason to create such combination is to have hierarchy in diagram to display diagram from general view to detailed view.
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.
This is reproducible when: - Copy a shape and paste it in the diagram - Drag and drop from the diagram toolbox
Using a custom router and gliding connectors may lead to a StackOverflow Exception. The exception is due to an endless update of the connection Start/End points and the ConnectionPoints. Resolution: The fix will be included in R2 2017 SP in June 2017. Generally, avoid using GlidingConnectors and custom Router which calculates intermediate points based on connections' StartPoint/EndPoint. This is а prerequisite of circular dependency between Start/EndPoint and ConnectionPoints. Gliding Connectors essence is to set StartEndPoints and sometimes they are based on the connection points' first and last point. On the other hand, custom router based on Start/EndPoint makes the opposite- connection points depend on start/end. Instead, the client can use the connection.Source.Bounds.Center (Top, Bottom, Left, Right etc) and connection.Target.Bounds.Center(Top, Bottom, Left, Right etc) in a custom router. Available in LIB version: 2017.2.515
Implement "Item to Item Snapping" during item resize operation. DECLINED: Duplicate with https://feedback.telerik.com/Project/143/Feedback/Details/101276-diagram-implement-item-to-item-snapping-during-resize
Using TreeLayout may lead to a memory leak because the TreeLayoutProcessor keeps a reference to the layout Root. Available in LIB version: 2014.3.1402
OrgTreeRouter holds references to RadDiagramConnections which are not removed from memory. Available in LIB version: 2014.3.1409
At the moment the ItemSnaping works only with the outer bounds but it should also snap to the centers.
Currently there is no straightforward way to notify that a point is added/removed from the ConnectionPoints collection of the RadDiagramConnection. Declined: Duplicate with http://feedback.telerik.com/Project/143/Feedback/Details/113488-diagrams-add-an-event-notifying-that-connectionpoint-is-added-or-removed
User sometimes need to use a Static Ruler which does not scale when you zoom the Diagram. Or when you pan. Just line with star 0, ticks, end 1024 for example. This line does not move and does nto scale. There is no easy way to achieve this. UpdateScale method is private. It could be protected. ==== In Q1 2014 SP DiagamRuler will draw itself and its ticks when its Diagram property is NOT set.
When using TreeLayout.Right if a shape has a single child that is shorter (in terms of height) the tops of the shapes are aligned, this means the centers of the shapes do not align and so the connection is 'crooked'. It would surely make more sense if the centres of the shapes were aligned.
When an implicit theme is applied in the project the ShapeStyleSelector property of the RadDiagrams doesn't work. More specifically the selector is never called.