繁体   English   中英

将组合框所选项目绑定到设置

[英]Databinding combobox selected item to settings

我使用应用程序设置属性和数据绑定存储用户指定的设置。 它一直运行良好,直到我希望用户选择组合框字体。 用户设置和组合框之间的数据绑定不起作用。 我要存储字体系列名称。

App.XML
<Application.Resources>
    <ResourceDictionary>
        <properties:Settings x:Key="Settings" />
    </ResourceDictionary>               
</Application.Resources>

Window.XML

<ComboBox Name="Families" ItemsSource="{x:Static Fonts.SystemFontFamilies}"
  <!-- This line -->
  SelectedItem="{Binding Source={StaticResource Settings}, Path=Default.Font, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
              Margin="57,122,199,118">
        <ComboBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}" FontFamily="{Binding}"/>
        </DataTemplate>
        </ComboBox.ItemTemplate>
    </ComboBox>

设置:字体字符串用户Arial

它以什么方式不起作用? 是否引发异常,项目未编译或设置未保存?

别忘了修改后必须明确保存设置。 出于这个原因,您最好绑定到应用并保存设置的ICommand ,而不是直接绑定到设置,或者添加绑定到此类命令的“保存”按钮。

添加SelectedValuePath =“ Source”解决了此问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM