WPF Bindung der My.Settings-Sammlung an Combobox-Objekte

8

Ich bin SEHR neu bei WPF und versuche immer noch, mich in XAML einzubinden.

Ich möchte eine Combobox mit den Werten einer Zeichenkettensammlung in my.settings füllen. Ich kann es in Code wie folgt machen:

Me.ComboBox1.ItemsSource = My.Settings.MyCollectionOfStrings

... und es funktioniert.

Wie kann ich das in meinem XAML machen? ist es möglich?

Danke

    
Ben Brandt 15.10.2008, 13:51
quelle

5 Antworten

18

Ja , Sie können (und sollten größtenteils) Bindungen in XAML deklarieren, da dies eine der leistungsstärksten Funktionen in WPF ist.

Um in Ihrem Fall die ComboBox an eine Ihrer benutzerdefinierten Einstellungen zu binden, würden Sie das folgende XAML verwenden:

%Vor%

Beachten Sie die folgenden Aspekte:

  • Wir haben einen XML-Namespace mit dem Präfix "p" deklariert, der auf den .NET-Namespace verweist, in dem sich die Klasse "Settings" befindet, um in XAML
  • darauf Bezug zu nehmen
  • Wir haben die Markup-Erweiterung '{Binding}' verwendet, um eine Bindung in XAML
  • zu deklarieren
  • Wir haben die Markup-Erweiterung 'Static' verwendet, um anzugeben, dass wir auf ein statisches Klassenmitglied ('shared' in VB) in XAML
  • verweisen möchten
Enrico Campidoglio 15.10.2008, 14:11
quelle
3

Ich habe eine einfachere Lösung, um eine benutzerdefinierte Markup-Erweiterung zu verwenden. In Ihrem Fall könnte es wie folgt verwendet werden:

%Vor%

Sie finden den C # -Code für diese Markup-Erweiterung in meinem Blog hier: Ссылка

    
Thomas Levesque 30.04.2009 16:23
quelle
1

Es ist möglich. In C # mache ich das so (für einen einfachen Bool):

%Vor%

Ich definiere die statische Ressource "Einstellungen" in meiner App.xaml's Application.Resources so:

%Vor%

Ihr Weg kann anders sein; In C # greifen Sie über

auf die App-Einstellungen in Ihrer Anwendung zu %Vor%     
Will 15.10.2008 14:12
quelle
1

Verstanden!

%Vor%

Danke, dass ihr mir geholfen habt, ein großartiges "Aha!" zu erreichen. Moment :-) ... hoffentlich, nachdem ich etwas mehr Zeit in WPF verbracht habe, werde ich verstehen, warum das funktioniert.

    
Ben Brandt 15.10.2008 16:16
quelle
0

Sie können die Liste auch als eine Zeichenfolge mit Trennzeichen in Einstellungen speichern und dann einen Konverter verwenden.

%Vor%

Wenn Sie auf eine Schaltfläche zum Durchsuchen klicken, können Sie der Liste Folgendes hinzufügen:

%Vor%     
Echilon 06.11.2009 18:01
quelle

Tags und Links