Ich habe mehrere Fragen zu diesem Thema gelesen, aber die Antworten funktionieren nicht für mich. Ich habe die folgende Enum, die in StlContainer.cs deklariert ist:
%Vor%Die Enumeration wird außerhalb der StlContainer-Klassendefinition deklariert, wodurch sie zu einer globalen Enumeration wird. Ich möchte seine Werte der Tag-Eigenschaft verschiedener XAML-Steuerelemente zuweisen, also habe ich versucht, es so zu machen:
%Vor%Aber der Fehler ist:
Fehler 1 Unbekannter Build-Fehler, 'Der Schlüssel darf nicht null sein. Parametername: Taste Zeile 234 Position 43. ' D: \ Visual Studio \ Projekte \ Dental Viewer \ Dental Viewer 1.2 Dental Viewer \ MainWindow.xaml 234 Dental Viewer 1.2
Ich habe versucht, die Enumeration zu MainWindow.xaml.cs zu verschieben, ich habe es versucht
%Vor%und
%Vor%Ich habe versucht, dies einem Tag auf einem Label-Steuerelement zuzuweisen und bekomme trotzdem den gleichen Fehler. Was fehlt mir hier? Kann ich eine Art von Binding verwenden, um dies zu umgehen?
PS: Wenn ich den Wert eintippe und zu Tag="{x:Static }"
komme, schlägt die automatische Vervollständigung nur den Member-Parameter vor, um ihn wie Tag="{x:Static Member=}"
zu vervollständigen, wenn das überhaupt zählt.
Ich fand die Lösung nach dem Lesen dies .
Ich dachte, dies wurde automatisch oder intern gemacht, aber die Lösung ist, dass ich den Namensraum local
im Window-Tag wie folgt deklarieren muss:
Dann funktioniert <xctk:ColorPicker Tag="{x:Static local:ToothVisualModelType.Tooth}"/>
wie ein Zauber.
Versuchen Sie, diesen Ausdruck zu verwenden:
%Vor%Oder Sie können eine statische Klasse wie folgt erstellen:
%Vor%In XAML auch so verwendet:
%Vor%