将属性移动到单独的类

本文关键字:单独 属性 移动 | 更新日期: 2023-09-27 18:35:25

在创建一个派生的新自定义控件时,我有这样的东西:

[Category("Appearance")]
public Color SeparatorColor
{
    get { return separatorColor; }
    set { separatorColor= value; }
}

和列表视图本身也有一个 ListViewInsertionMark 类,但我不能使用它,因为它在关闭视觉样式时不起作用,可悲的是在我的应用程序中它们应该被关闭。

所以现在我在我的主类中有类似的东西,它派生自列表视图,它工作正常。但我在想我是否可以让它更类似于.我不能使用的NET类。所以把它移到一个单独的类,等等... 你有什么建议?保持主类内部的状态?将其移动到单独的类?好的设计?糟糕的设计?

将属性移动到单独的类

ListViewInsertionMark 基本上用于指向放置位置。
如果您只需要列表项之间的分隔符,那么是的,您需要从 ListView 派生。

添加此 SeperatorColor 属性(可以在此处使用自动属性)。覆盖OnPaint,并逐个绘制分隔符,不要忘记调用base。喷漆
干杯。