Ausnahme mit Typ-System: Char
-
27-09-2019 - |
Frage
Ich versuche, einen wiederverwendbaren System:Char
Wert in meiner xaml
Ressource zu schaffen.
ich habe:
xmlns:s="clr-namespace:System;assembly=mscorlib"
Dann:
<s:Char x:Key="MaskPromptChar">#</s:Char>
ich eine Ausnahme erhalten:
The type 'Char' was not found. [Line: 8 Position: 44]
Aber ... ich auch haben:
<s:Double x:Key="DefaultControlWidth">200</s:Double>
Und ...
<s:String x:Key="ApplicationTitle">My Title</s:String>
Sowohl String
und Double
funktionieren.
Ideen ??
Lösung
Dieser Code funktioniert für mich sowohl in Silverlight und WPF.
<UserControl.Resources>
<sys:Double x:Key='myDouble'>4</sys:Double>
<sys:Char x:Key='myChar'>#</sys:Char>
</UserControl.Resources>
<StackPanel x:Name="LayoutRoot">
<PasswordBox Password='aaa'
PasswordChar='$' />
<PasswordBox Password='aaa'
PasswordChar='{StaticResource myChar}' />
</StackPanel>
Was Eigenschaft versuchen Sie, die Zeichen zu vergeben?
Andere Tipps
Meine Vermutung ist, dass Char ist eine Struktur , anstatt ein Objekt, und was Sie wirklich suchen, ist Box von einem 16-Bit-integer-Wert, den Unicode. Ich neige dazu, in XAML als Spezialisierung Serialisierung suchen Objekte , und wenn Char ist eigentlich ein struct dieses Modell brechen kann.
Sie könnten stattdessen die Kugel beißen und mit einem String der Länge eins zu betrachten.
UPDATE : Ich mit gmcalab solider Argumentationslinie einverstanden ist, und auf der Grundlage, dass ein Experiment durchgeführt, einen Namespace zu mscorlib und die entsprechenden Zeichen Ressource verwendet wird. Es funktioniert ohne Probleme. (Sind wir jetzt in einem Namensraum oder Bibliothek Kollisionsproblem suchen?)