C# 如何显示主色列表并非全部
我想给用户选择前景颜色的机会。所以我用C# 如何显示主色列表并非全部,c#,wpf,colors,enumeration,C#,Wpf,Colors,Enumeration,我想给用户选择前景颜色的机会。所以我用 foreach (PropertyInfo info in typeof(Colors).GetProperties()) cmbStrokeColour.Items.Add(info.Name); 但这有两个问题,因为它有太多的项目: 填充时间太长 这让用户感到困惑 有没有办法只列出主要颜色而不是全部颜色。 所以现在的问题是定义主颜色。我得说这是这个列表的一个子集。不仅是红、绿、蓝,而且不是上面列表中的141项 感谢您的帮助您可以使用工具
foreach (PropertyInfo info in typeof(Colors).GetProperties())
cmbStrokeColour.Items.Add(info.Name);
但这有两个问题,因为它有太多的项目:
填充时间太长
这让用户感到困惑
有没有办法只列出主要颜色而不是全部颜色。
所以现在的问题是定义主颜色。我得说这是这个列表的一个子集。不仅是红、绿、蓝,而且不是上面列表中的141项
感谢您的帮助您可以使用工具箱中的控件解决所有问题 它允许您使用带有颜色选项的组合框,用户可以选择: 甚至可以使用调色板: 您可以通过引用视图中的名称空间来使用它:
xmlns:toolkit="http://schemas.xceed.com/wpf/xaml/toolkit"
并将其用作标准控件:
<toolkit:ColorPicker Name="ClrPcker_Background" SelectedColorChanged="ClrPcker_Background_SelectedColorChanged"/>
在你的代码背后:
private void ClrPcker_Background_SelectedColorChanged(object sender, RoutedPropertyChangedEventArgs<Color> e)
{
TextBox.Text = "#" + ClrPcker_Background.SelectedColor.R.ToString() + ClrPcker_Background.SelectedColor.G.ToString() + ClrPcker_Background.SelectedColor.B.ToString();
}
它甚至允许您选择用户可以使用的颜色、如何对其进行分类等等。您可以使用工具箱中的控件解决所有问题 它允许您使用带有颜色选项的组合框,用户可以选择: 甚至可以使用调色板: 您可以通过引用视图中的名称空间来使用它:
xmlns:toolkit="http://schemas.xceed.com/wpf/xaml/toolkit"
并将其用作标准控件:
<toolkit:ColorPicker Name="ClrPcker_Background" SelectedColorChanged="ClrPcker_Background_SelectedColorChanged"/>
在你的代码背后:
private void ClrPcker_Background_SelectedColorChanged(object sender, RoutedPropertyChangedEventArgs<Color> e)
{
TextBox.Text = "#" + ClrPcker_Background.SelectedColor.R.ToString() + ClrPcker_Background.SelectedColor.G.ToString() + ClrPcker_Background.SelectedColor.B.ToString();
}
它甚至可以让你选择用户可以使用的颜色,如何分类等等。正如你已经提到的,你所说的主色是一个问题。请在请求编程解决方案之前指定此选项。只有当你澄清了这一点,你才能添加一个基于Linqs Where语句的实现。主颜色对你意味着什么,你会如何分类/识别它们?另外,你不能使用Linq的Take扩展吗?你是指原色和副色,如红色、蓝色、绿色、黄色、洋红、青色吗?黑白的怎么样?甚至是灰色?这就是问题所在。在WinForm中,我回忆起不同的颜色集:系统颜色、网页颜色等。。。我认为这里也有类似的东西。正如你已经提到的,你所说的主色是什么意思是一个问题。请在请求编程解决方案之前指定此选项。只有当你澄清了这一点,你才能添加一个基于Linqs Where语句的实现。主颜色对你意味着什么,你会如何分类/识别它们?另外,你不能使用Linq的Take扩展吗?你是指原色和副色,如红色、蓝色、绿色、黄色、洋红、青色吗?黑白的怎么样?甚至是灰色?这就是问题所在。在WinForm中,我回忆起不同的颜色集:系统颜色、网页颜色等。。。我认为这里也有类似的东西。很好,这是一个很好的解决方案,也很容易实现。只是为了知识。是否只有一个元素列表?没有我在上一篇评论中提到的其他子集?据我所知,默认情况下,WPF中不存在或不存在区分web颜色、桌面颜色等枚举的方法。很好,这是一个很好的解决方案,也很容易实现。只是为了知识。是否只有一个元素列表?没有我在之前的评论中所说的其他子集?据我所知,默认情况下,WPF中不存在或不存在区分web颜色、桌面颜色等枚举的方法。