using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; using System.Windows; namespace AIStudio.Wpf.DiagramDesigner.Demo.ViewModels { class ThickLinkViewModel : BaseViewModel { public ThickLinkViewModel() { Title = "Custom link"; Info = "Creating your own custom links is very easy!"; _service.ColorViewModel.FillColor.Color = System.Windows.Media.Colors.Orange; DiagramViewModel = new DiagramViewModel(); DiagramViewModel.PageSizeType = PageSizeType.Custom; DiagramViewModel.PageSize = new Size(double.NaN, double.NaN); DefaultDesignerItemViewModel node1 = new DefaultDesignerItemViewModel() { Left = 50, Top = 50, Text = "1" }; DiagramViewModel.DirectAddItemCommand.Execute(node1); DefaultDesignerItemViewModel node2 = new DefaultDesignerItemViewModel() { Left = 300, Top = 300, Text = "2" }; DiagramViewModel.DirectAddItemCommand.Execute(node2); DefaultDesignerItemViewModel node3 = new DefaultDesignerItemViewModel() { Left = 300, Top = 50, Text = "3" }; DiagramViewModel.DirectAddItemCommand.Execute(node3); ConnectionViewModel connector1 = new ConnectionViewModel(node1.RightConnector, node2.LeftConnector, DrawMode.ConnectingLineSmooth, RouterMode.RouterNormal); connector1.ColorViewModel.LineWidth = 6; connector1.ColorViewModel.LineColor.BrushType = BrushType.LinearGradientBrush; connector1.ColorViewModel.LineColor.GradientStop = new ObservableCollection(); connector1.ColorViewModel.LineColor.GradientStop.Add(new GradientStop(System.Windows.Media.Colors.Red, 0)); connector1.ColorViewModel.LineColor.GradientStop.Add(new GradientStop(System.Windows.Media.Colors.Gray, 1)); DiagramViewModel.DirectAddItemCommand.Execute(connector1); ConnectionViewModel connector2 = new ConnectionViewModel(node2.RightConnector, node3.RightConnector, DrawMode.ConnectingLineStraight, RouterMode.RouterOrthogonal); connector2.ColorViewModel.LineWidth = 6; connector2.ColorViewModel.LineColor.Color = System.Windows.Media.Colors.Blue; DiagramViewModel.DirectAddItemCommand.Execute(connector2); DiagramViewModel.ClearSelectedItemsCommand.Execute(null); } } }