如果点击添加了Capture的按钮,我想更改WPF窗口的整个FontSize (Button, TextBox, Label, etc...)
。
我创建了Main Project和子项目来开发,我也在App.xaml中使用Style(在主项目中),我想绑定Resources FontSize(在Sub Project中)Setter Value,但是我不能给DataContext应用。 另外,我不能在另一个子项目中给出参考模型吗?
这是我的代码的一部分。
主项目(启动)中的App.xaml
<Application xmlns:mydata="clr-namespace:Example.Exampl_Data" > ...<mydata:ChangeFontSize x:Key="MyFontKey"/>
==&GT;这是一个错误(找不到命名空间;我想因为它在另一个项目中。)
<Style x:Key="LabelTitleStyle" TargetType="Label" BasedOn="{StaticResource {x:Type Label}}">
<Setter Property="FontSize" Value="{StaticResource MyFontKey.FontSize}"/>
<Setter Property="FontWeight" Value="Bold"/>
<Setter Property="Margin" Value="5"/>
</Style>
子项目中的example.xaml
<Label x:Name="lb_Reg" Content="TEST" Style="{DynamicResource LabelTitleStyle}"/>
ChangeFontSize.cs
public class ChangeFontSize : INotifyPropertyChanged
{
public double fontSize=15;
public double FontSize
{
get { return fontSize; }
set { fontSize = value; }
}
public ChangeFontSize() { }
public event PropertyChangedEventHandler PropertyChanged;
void OnPropertyChanged(string propName)
{
if (this.PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propName));
}
}
public void Increase()
{
FontSize += 10;
}
public void Decrease()
{
FontSize -= 10;
}
}
Example.xaml.cs
private void btn_biggerF_Click(object sender, RoutedEventArgs e)
{
cfs.Increase();
}
private void btn_smallerF_Click(object sender, RoutedEventArgs e)
{
cfs.Decrease();
}