none
Multibinding und App-Settings RRS feed

  • Frage

  • Hallo! Ich habe eine Frage zum Multibinding in WPF und hoffe, dass es unter den C#-Experten auch welche in WPF gibt.

    Ich würde gerne per Binding aus den Settings der Applikation einen string  auslesen und diesen binden. Es geht um "Role"."properties:" ist der Namespaces für die Settings.

     <MenuItem.Visibility>
        <MultiBinding  Converter="{StaticResource OrderCommandPermissionConverter}" ConverterParameter="StartGlueProcess, ClientAndServer">
    		<MultiBinding.Bindings>
          <Binding Path="properties:Settings.Default.Role, Mode=OneWay}"/>       <=====
          <Binding Path="MyObject.CanDrive" />
    		</MultiBinding.Bindings>
      </MultiBinding>
    </MenuItem.Visibility>

    Leider wird so kein Binding durchgeführt. Wie kann man es erreichen? Ich habe ein Bespiel gefunden, wie man so ein Setting an den Text einer TextBox binden kann. Aber leider keins für Multibinding.... Es müsste eigentlich gehen, aber mir ist die Syntax nicht klar.

    Danke für die Hilfe!

     

    Donnerstag, 18. Juli 2013 17:39

Antworten

  • Hallo,

    dein Problem hat eher wenig mit MultiBinding zu tun.

    Um an Properties.Settings zu binden, musst Du zuerst deiner XAML-Datei einen benutzerdefinierten XML-Namensraum hinzufügen:

    <Window x:Class="WpfApplication1.MainWindow"
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
            xmlns:local="clr-namespace:WpfApplication1"
            xmlns:properties="clr-namespace:WpfApplication1.Properties"
            Title="MainWindow" Height="350" Width="525">
    

    Dann kannst Du innerhalb deines Markups auf die Properties folgendermaßen zugreifen:

    <Binding Source="{x:Static properties:Settings.Default}" Path="Role" />

    Gruß

    Marcel

    • Als Antwort markiert DulcineaS Freitag, 19. Juli 2013 04:29
    Freitag, 19. Juli 2013 02:28
    Moderator