在wpf中加载包含所有系统颜色的组合框
我创建了组合框,我想加载所有标准颜色。我想在 xaml.cs 文件中而不是直接的 XAML 中执行此操作。我发现了很多在 .NET 的 C# 中执行此操作的示例,但在 WPF 中却没有。
我发现以下在 .NET 中运行的代码,似乎 prop.PropertyType.FullName
永远不等于 "System.Drawing.Color")
我通过它进行了调试,并且唯一的System.Reflection.PropertyInfo 等于 System.Windows.Media.ColorContext 的有意义值。但是当我尝试这个时,它没有返回任何颜色。
foreach (System.Reflection.PropertyInfo prop in typeof(Color).GetProperties())
{
if (prop.PropertyType.FullName == "System.Drawing.Color")
comboBox1.Items.Add(prop.Name);
}
如有任何建议或意见,我们将不胜感激。
谢谢!
I have created combo box that I would like to load with all of the standard colors. I would like to do this in the xaml.cs file rather than the straight XAML. I have found many examples to do this in the C# for .NET but not WPF.
I found the following code that runs in .NET and it seems that prop.PropertyType.FullName
never equals "System.Drawing.Color")
I debugged through it and the only value that System.Reflection.PropertyInfo eqauls that makes sense is System.Windows.Media.ColorContext. But when i tried this it did not return any colors.
foreach (System.Reflection.PropertyInfo prop in typeof(Color).GetProperties())
{
if (prop.PropertyType.FullName == "System.Drawing.Color")
comboBox1.Items.Add(prop.Name);
}
Any Suggestions or comments are appreciated.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这对我有用。尝试调试。您可能会获得颜色,但问题在于添加项目。
This worked for me. Try a Debug. You may be getting the colors but the problem is with is add items.
您可以通过
ResourceDictionary
导入样式并应用组合框的样式。
You can import the style via a
ResourceDictionary
And apply the style of the combo box.
Color
属性,而不是Colors
System.Windows.Media.Color
(而不是 <代码>System.Drawing.Color)Color
and notColors
System.Windows.Media.Color
(instead ofSystem.Drawing.Color
)