2010-02-10 71 views
3

标准颜色名称是英文名称,好的。但我的应用程序是德文的,所以我想将我的ComboBox中的颜色名称作为德文名称。而不是“蓝色”,“黄色”等。我想要有“Blau”,“Gelb”等。本地化System.Windows.Media.Color名称

是否有一个函数返回所有本地化名称?或者,在这次电话会议中改变文化是否容易?

<ObjectDataProvider MethodName="GetType" 
        ObjectType="{x:Type sys:Type}" 
        x:Key="colorsTypeOdp"> 
    <ObjectDataProvider.MethodParameters> 
     <sys:String>System.Windows.Media.Colors, PresentationCore, 
    Version=3.0.0.0, Culture=neutral, 
    PublicKeyToken=31bf3856ad364e35</sys:String> 
    </ObjectDataProvider.MethodParameters> 
</ObjectDataProvider> 

回答

0

对不起,该代码段不见了......所以在这里,它是:

<ObjectDataProvider MethodName="GetType" 
        ObjectType="{x:Type sys:Type}" 
        x:Key="colorsTypeOdp"> 
    <ObjectDataProvider.MethodParameters> 
     <sys:String>System.Windows.Media.Colors, PresentationCore, 
    Version=3.0.0.0, Culture=neutral, 
    PublicKeyToken=31bf3856ad364e35</sys:String> 
    </ObjectDataProvider.MethodParameters> 
</ObjectDataProvider> 
0

不,这些属性名称 - 代码/类定义为字符串的尽可能多的部分。长度属性 - 不是资源。属性名称未本地化。

2

我已经找到了一个有用的表格,这给了我一些翻译(英语名称和德国的)表,可以发现:http://farbe-computer.de/kapitel33.html

我将用文字和转换器,以显示德国的颜色名称。

在布兰登。我会尽快,因为我有RTFM :)

1

作为后续peetee的问题,并链接到this German page about Netscape color names,我已经建立了a small C# wrapper class,你可以删除我的回答落进你的项目。

使用时,只需把它类似于:

string germanName = ColorNameGermanTranslator.GetGermanName(Color.Green); 

,你会得到德国人的名字后面。它使用英文名称作为后备。