C# 将combobox所选项目数据绑定到设置
我使用应用程序设置属性和数据绑定存储用户指定的设置。它一直工作得很好,直到我希望用户选择combobox的字体。用户设置和组合框之间的数据绑定不起作用。我想存储字体族名称C# 将combobox所选项目数据绑定到设置,c#,wpf,data-binding,xaml,combobox,C#,Wpf,Data Binding,Xaml,Combobox,我使用应用程序设置属性和数据绑定存储用户指定的设置。它一直工作得很好,直到我希望用户选择combobox的字体。用户设置和组合框之间的数据绑定不起作用。我想存储字体族名称 App.XML <Application.Resources> <ResourceDictionary> <properties:Settings x:Key="Settings" /> </ResourceDictionary>
App.XML
<Application.Resources>
<ResourceDictionary>
<properties:Settings x:Key="Settings" />
</ResourceDictionary>
</Application.Resources>
App.XML
Window.XML
SelectedItem=“{Binding Source={StaticResource Settings},Path=Default.Font,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}”
Margin=“57122199118”
设置:
字体字符串用户Arial它以什么方式不工作?是否引发异常、项目是否未编译或设置是否未保存
不要忘记,修改设置后必须明确保存设置。因此,您最好绑定到应用并保存设置的
ICommand
,而不是直接绑定到设置,或者添加绑定到此类命令的“save”按钮。添加SelectedValuePath=“Source”解决此问题。未保存/加载设置。我正在使用Properties.Settings.Default.Save();保存设置。下面是一个小演示,它有复选框(正在工作)和组合框(不工作)。www.tlcube.com/files/cfgdemo。zip@Tuukka我可能要到周末的某个时候才能看到这个;也许今天会有其他人来看看。
<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>