WPF添加样式资源而无需输入代码
我正在从WPF应用程序的代码隐藏生成一个xaml,并希望向生成的xaml中添加样式。我正在使用一个资源字典来存储样式信息,我的应用程序将根据资源字典中的键访问并应用到生成的xaml中的相应元素。现在我想对生成的xaml中的所有文本框应用特定样式。我要做的是在没有键的资源字典中创建这个样式,我想将这个样式资源添加到生成的xaml的资源中。我似乎找不到一种方法在没有键的情况下将特定资源添加到生成的xaml的资源字典中。我的问题是,是否可以这样做,即在没有资源键的情况下将资源添加到usercontrol(或window等)的资源字典中 例如,下面是我要生成的XAML:WPF添加样式资源而无需输入代码,wpf,Wpf,我正在从WPF应用程序的代码隐藏生成一个xaml,并希望向生成的xaml中添加样式。我正在使用一个资源字典来存储样式信息,我的应用程序将根据资源字典中的键访问并应用到生成的xaml中的相应元素。现在我想对生成的xaml中的所有文本框应用特定样式。我要做的是在没有键的资源字典中创建这个样式,我想将这个样式资源添加到生成的xaml的资源中。我似乎找不到一种方法在没有键的情况下将特定资源添加到生成的xaml的资源字典中。我的问题是,是否可以这样做,即在没有资源键的情况下将资源添加到usercontro
<UserControl>
<UserControl.Resources>
<Style TargetType="{x:Type TextBox}">
<!--The TextBox style-->
</Style>
</UserControl.Resources>
</UserControl>
谢谢 所以,我找到了一种方法。在添加到生成的xaml的资源中而不是指定字符串键时,我使用了typeof(TextBox),这似乎很有效
UserControl.Resources.Add(typeof(TextBox), styleDictionary["TextBoxStyleKey"]);
这导致:
<UserControl.Resources>
<Style TargetType="TextBox" x:Key="{x:Type TextBox}">
<!--The Style-->
</Style>
</UserControl.Resources>
是否有更好的方法(或任何其他方法)执行此操作?FYI,此方法有效,因为如果不添加
x:Key
,则会使用TargetType作为密钥。