// // // // // $Revision$ // using System; using System.Windows.Media; using System.Windows.Shapes; using ICSharpCode.WpfDesign.Adorners; using ICSharpCode.WpfDesign.Extensions; using ICSharpCode.WpfDesign.Designer.Controls; using System.Windows; namespace ICSharpCode.WpfDesign.Designer.Extensions { /// /// Draws a dotted line around selected UIElements. /// [ExtensionFor(typeof(UIElement))] public class SelectedElementRectangleExtension : SelectionAdornerProvider { /// /// Creates a new SelectedElementRectangleExtension instance. /// public SelectedElementRectangleExtension() { Rectangle r = new Rectangle(); r.SnapsToDevicePixels = true; r.Stroke = Brushes.Black; r.StrokeDashCap = PenLineCap.Square; r.StrokeDashArray = new DoubleCollection(new double[] { 0, 2 }); r.IsHitTestVisible = false; RelativePlacement placement = new RelativePlacement(); placement.WidthRelativeToContentWidth = 1; placement.HeightRelativeToContentHeight = 1; placement.WidthOffset = 2; placement.HeightOffset = 2; placement.XOffset = -1; placement.YOffset = -1; this.AddAdorner(r, placement); } } }