如何显示主要颜色列表而不是全部
How to show list of main colours not all
我想给用户选择前景颜色的机会。所以我用
填充了一个组合框
foreach (PropertyInfo info in typeof(Colors).GetProperties())
cmbStrokeColour.Items.Add(info.Name);
但这有两个问题,因为它的项目太多了:
- 填充时间太长
- 这让用户感到困惑
有没有办法只列出主要颜色而不是全部。
所以现在的问题是定义主要颜色。我会说这是该列表的一个子集。好吧,不仅是红色绿色蓝色而且不是上面列表中的 141 项。
感谢您的帮助
您可以使用 Color Picker controlfrom the WPF Toolkit Extended 工具包解决所有问题。
它允许您使用用户可以选择颜色的组合框 select:
甚至使用调色板:
您可以通过在您的视图中引用命名空间来使用它:
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();
}
它甚至允许您 select 哪些颜色可供用户使用,如何将它们分类等等。
我想给用户选择前景颜色的机会。所以我用
填充了一个组合框 foreach (PropertyInfo info in typeof(Colors).GetProperties())
cmbStrokeColour.Items.Add(info.Name);
但这有两个问题,因为它的项目太多了:
- 填充时间太长
- 这让用户感到困惑
有没有办法只列出主要颜色而不是全部。 所以现在的问题是定义主要颜色。我会说这是该列表的一个子集。好吧,不仅是红色绿色蓝色而且不是上面列表中的 141 项。
感谢您的帮助
您可以使用 Color Picker controlfrom the WPF Toolkit Extended 工具包解决所有问题。
它允许您使用用户可以选择颜色的组合框 select:
甚至使用调色板:
您可以通过在您的视图中引用命名空间来使用它:
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();
}
它甚至允许您 select 哪些颜色可供用户使用,如何将它们分类等等。