0
点赞
收藏
分享

微信扫一扫

wpf 装饰类

juneyale 2022-07-28 阅读 67

可以通过装饰类给现有控件添加显示效果

wpf 装饰类_ide

装饰类需要继承Adorner

 public class MoveRotateAdorner : Adorner
{
public MoveRotateAdorner(UIElement adornedElement) : base(adornedElement)
{
}

//重写渲染
protected override void OnRender(DrawingContext drawingContext)
{
//Rect adornedElementRect = new Rect(this.AdornedElement.DesiredSize);

Rect adornedElementRect = new Rect(this.AdornedElement.RenderSize);

// Some arbitrary drawing implements.
SolidColorBrush renderBrush = new SolidColorBrush(Colors.Green);
renderBrush.Opacity = 0.2;
Pen renderPen = new Pen(new SolidColorBrush(Colors.Navy), 1.5);
double renderRadius = 5.0;

// Draw a circle at each corner.
drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopLeft, renderRadius, renderRadius);
drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopRight, renderRadius, renderRadius);
drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomLeft, renderRadius, renderRadius);
drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomRight, renderRadius, renderRadius);
}
}

调用

//addAdorner为需要绑定装饰层的对象
var layer = AdornerLayer.GetAdornerLayer(addAdorner);
layer.Add(new MoveRotateAdorner(addAdorner));

留待后查,同时方便他人


举报

相关推荐

0 条评论