dar*_*rja 7 .net wpf decorator
我需要创建控件来围绕其子项绘制边框.所以,我创建了类并从Decorator派生出来:
class RoundedBoxDecorator : Decorator
{
protected override Size ArrangeOverride(Size arrangeSize)
{
//some source
}
protected override void OnRender(DrawingContext dc)
{
//some source
}
}
Run Code Online (Sandbox Code Playgroud)
它工作正常,但我对使用Decorator作为祖先有一些疑问.我在MSDN中发现它中没有特殊的方法或属性,只是从它的祖先(UIElement或FrameworkElement)派生而来.ArrangeOverride和OnRender也是派生的.
那么,Decorator类的设计是什么,使用它有意义吗?或者我可以从FrameworkElement派生出来?
Dan*_*att 10
除了它继承的内容之外FrameworkElement,Decorator该类还实现了一个Child属性(类型UIElement),以及实现IAddChild接口.因此Decorator是可以包含另一个元素的最原始的元素.
您是否有理由无法使用Border元素(继承自Decorator)来创建子元素周围的边框?
| 归档时间: |
|
| 查看次数: |
5675 次 |
| 最近记录: |