gpt4 book ai didi

c# - 如何增加刷子的数量?

转载 作者:行者123 更新时间:2023-11-30 21:45:44 24 4
gpt4 key购买 nike

我想扩展 System.Windows.Media.Brushes 类中的颜色数量,这样我就可以与新画笔的字符串名称进行绑定(bind)。

喜欢:value="myRed"

我使用 C#、.NET 4.5.2、VS2015、Windows 7。

最佳答案

这是不可能的,因为 System.Drawing.Brushes 类是密封的。这意味着它不能继承,因此不能扩展。

你最好创建一个包含你的颜色的资源字典:

<ResourceDictionary ... >

<!-- Declare your colours here. -->
<SolidColorBrush x:Key="MyColour">#ffffff</SolidColorBrush>

</ResourceDictionary>

然后将该词典包含在您的 App.xaml 中:

<Application ... >
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!-- You may need to include more than one resource dictionary. -->
<ResourceDictionary Source="pack://application:,,,/Your.Project;component/Path/To/Dictionary.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
</Application>

您可以像这样在代码隐藏中获取这些资源:

Brush myColour = (Brush)Application.Current.FindResource("MyColour");

在我看来,这是扩展现有 Brushes 类的更好方法,因为在您的 代码和 代码之间有明显的区别.NET 代码。不仅如此,将您的颜色放入资源字典中可以促进跨项目的重用,并且资源可以轻松扩展并更能适应不断变化的需求。

您可以在 documentation 中找到更多关于资源字典的信息.

关于c# - 如何增加刷子的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39866795/

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