If we have a custom shape that derives from RadDiagramShapeBase and we rotate it at some degree (90) for example, and then resize it the diagram's selection adorner is misplaced with the shape. Workaround:
Set RenderTransofrmOrigin = new Point(0.5, 0.5) to the shape.
Other workaround: Derive the custom shape from RadDiagramShape, instead of RadDiagramShapeBase.
DragAndDrop from toolbox is not working if an external dll is located in the GAC and the DiagramToolBox is located there.
The PrintSettingsViewModel ' s MergeAndValidatePrintTicket method might throw PrintQueueExceptions. Catch them and provide info to the users somehow, for example args in the PreviewPrint event.
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
NavigationPane does not show all connection when the RadDiagram IsVirtualized
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
Available in LIB version: 2016.2.516
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
Available in LIB version: 2016.2.801
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
Setting diagram.UndoRedoService.UndoBufferSize to 0 after doing some undoable action in diagram does not stop the undo operations. This is a regression issue. Expected: UndoBufferSize 0 means no undo possible. RedoBufferSize 0 means no redo possible. Worakround if applicable: Set the UndoBufferSize to 0 after InitializeComponent. (this is if you don't need undo/redo at all).
Use TextTool to create shape with no text but with background. Pressing enter will close the tool. But the shape remains visible, but you cannot neither select it nor delete it with mouse / keyboard. By design this shape should be removed both from the Shapes collection and from the diagram surface.
As a workaround you can try deleting this shape manually by overriding the Diagram's CommandExecuted event : private void diagram_CommandExecuted(object sender, CommandRoutedEventArgs e) { if (e.Command.Name == "Edit Item") { foreach (RadDiagramTextShape textShape in this.diagram.ChildrenOfType<RadDiagramTextShape>()) { if (!this.diagram.Shapes.Contains(textShape)) { Canvas parent = textShape.Parent as Telerik.Windows.Controls.Diagrams.DiagramSurface; if (parent != null) { parent.Children.Remove(textShape); this.diagram.ServiceLocator.GetService<Telerik.Windows.Diagrams.Core.ISelectionService<IDiagramItem>>().ClearSelection(); } } } }
Loading the diagram via its Load() method adds additional "Copy of" to the GroupName property of the groups.
RadDiagram with virtualization turned off. Randomly positioned 5000 shapes are added in Diagram. For the test, Shapes are with simplified template consisting pretty much of a single Border and nothing else. On maximized WPF window, Diagram Load for about 3-3.5 seconds. On normal WPF window, DIagram loads for about 15 seconds.
When you select the Size tab and than select another shape where the Size should not be available, its content is shown whether is enabled or not. The SettingsPane should fallback to an enabled tab when one is disabled. To work this around you can create a custom RadTabControl and implement custom fallback selection logic there. Then replace the RadTabConrol from the ControlTemplate of the SettingsPaneView with the custom tab control. Check the attached project.
As a workaround, the property can be set locally for the time being.
Now when i want to move the drawing in visual range,just by zoom in and zoom out ,if using the doument area like the microsoft visio,adding the A4 size design area(or B5,A3, and so on...), we can zoom in and zoom out area by Ctrl+Mousewheel,can pan the drawing by scrollbar too.