gpt4 book ai didi

.net - 如何在WinForm应用程序中实现应用程序范围的颜色代码?

转载 作者:行者123 更新时间:2023-12-04 02:59:39 26 4
gpt4 key购买 nike

我正在构建WinForms应用程序,并且在大多数控件上使用了特定的颜色。我有时是从WinForms设计器中执行此操作的,有时是直接在我的代码中执行的。

我在某个地方有一个静态类,看起来像这样:

 public static class MyColors
{
public static Color DarkGreen = Color.FromArgb(0, 70, 62);
...
public static Color Orange = Color.FromArgb(239, 132, 16);

}

我可以很轻松地在代码中使用这些颜色,但是无法从设计器中进行操作,这会引发此错误:

MyColors.DarkGreen is not a valid value for Int32.



(我试图存储这些颜色的Int32表示形式,但是由于相同的错误而失败)

我现在使用的解决方案是在设计器中使用rgb颜色代码,在代码中使用MyColors类值,并且我正在使用Visual Studio的全部替换功能进行更改。这不是一个很好的解决方案,但是到目前为止,我还没有找到一个更好的主意。

有任何想法吗 ?

注意:我知道 this question,它与我的稍有不同,因为我不打算更改“KnownColors”。

最佳答案

要获得设计人员对其他颜色定义的支持,您可能需要创建自己的编辑器,以扩展或替换 Color 编辑器。定义这些属性后,您需要通过将 Editor 属性应用于受影响的属性来告诉设计器哪些属性应使用您的编辑器。

您还可以通过对 TypeConverter TypeConverterAttribute 进行类似的操作来获得一些成功。

关于.net - 如何在WinForm应用程序中实现应用程序范围的颜色代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1504087/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com