我想在C#WPF中创建自定义Rectangle
,但无法从Rectangle
继承。因此,基本上我要做的就是从所需的Rectangle
复制方法,并将其传递给我保留在自定义Rectangle
类中的Rectangle
-Object,如下所示:>
private double _width;
public double Width
{
get => _width;
set
{
_width = value;
_rectangle.Width = _width;
}
}
private double _height;
public double Height
{
get => _height;
set
{
_height = value;
_rectangle.Height = _height;
}
}
private Brush _stroke;
public Brush Stroke
{
get => _stroke;
set
{
_stroke = value;
_rectangle.Stroke = _stroke;
}
}
private int _strokeThickness;
public int StrokeThickness
{
get => _strokeThickness;
set
{
_strokeThickness = value;
_rectangle.StrokeThickness = _strokeThickness;
}
}
private Brush _fill;
public Brush Fill
{
get => _fill;
set
{
_fill = value;
_rectangle.Fill = _fill;
}
}
private bool _focusable;
public bool Focusable
{
get => _focusable;
set
{
_focusable = value;
_rectangle.Focusable = _focusable;
}
}
C#.NET中是否有语言功能可以帮我做到这一点,所以我不必手工编写所有内容?
答案 0 :(得分:1)
否用母语没有。可能是因为这通常不是您想要的。
密封的类是有原因密封的。
在您的示例中,我没有看到任何添加的属性,所以也许可以使用扩展方法?
我还看到您为每个属性都有一个字段,还有一个_rectangle
字段。你为什么要那样做。您只需在吸气剂中返回_rectangle.width
。