4 Stimmen

Wie kann ich IntelliSense dazu bringen, eine Aufzählung auf einem benutzerdefinierten/benutzerdefinierten Steuerelement in XAML automatisch zu vervollständigen?

Mögliches Duplikat:
WPF: wie man Enum-Eigenschaftswerte in vs2008 Xaml-Editor Intellisense anzeigen?

Wenn ich in XAML die Eigenschaft Orientation für ein StackPanel definiere, zeigt IntelliSense die Aufzählung Orientation an. Wenn ich mein eigenes Steuerelement mit einer DependencyProperty definiere, die auf einer Aufzählung basiert, gibt es dann eine Möglichkeit, IntelliSense dazu zu bringen, die Aufzählung aufzurufen?

Enum:

public enum MyEnum { Foo, Bar }

DependencyProperty in der Steuerung:

public static readonly DependencyProperty MyEnumValueProperty =
    DependencyProperty.Register(
        "MyEnumValue",
        typeof(MyEnum),
        typeof(MyControl),
        new UIPropertyMetadata());

public MyEnum MyEnumValue
{
    get { return (MyEnum)GetValue(MyEnumValueProperty); }
    set { SetValue(MyEnumValueProperty, value); }
}

EDITAR:

Ich gebe die Antwort "Daniel Pratt", weil er mich auf den richtigen Weg gebracht hat. Ich hätte lieber ein Code-Beispiel gehabt.

Damit das funktioniert:

  1. Hinzufügen des Attributs XmlnsDefinition zu AssemblyInfo.cs

    [Montage: XmlnsDefinition(" http://schemas.your-company.com/wpf/ ", "YourNamespace")]

  2. Fügen Sie in der XAML-Quelle, in der das Steuerelement definiert werden soll, einen xmlns-Eintrag für das Steuerelement hinzu

    xmlns:control="http://schemas.your-company.com/wpf/"

  3. Und schon können Sie das Steuerelement hinzufügen und IntelliSense zeigt die Enum-Werte an

0voto

Versuchen Sie etwas wie diese oder verwenden ReSharper

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X