资源字典WPF

发布于 2024-12-03 22:13:08 字数 363 浏览 1 评论 0原文

我的 WPF 应用程序中有一个资源字典,其中包含各种控件的样式信息。

可以像我们在HTML中使用CSS的方式一样使用吗?例如,

 p
 {
   margin:20px;
   font:Tahoma;
  }

这适用于 HTML 中的所有“p”标签。我们不必在 HTML 中针对“p”标记特别提及这一点。

同样的方法是否适用于 WPF,或者我们是否必须专门 提及样式

<TextBlock Text="Test" Style="{DynamicResource SomeTextblockStyle}" />

在 XAML 中

I have a resource dictionary in my WPF application which contains the style information for the various controls.

Can it be used like the way we use in CSS in HTML? For example

 p
 {
   margin:20px;
   font:Tahoma;
  }

this applies to all "p" tags in HTML. We dont have to specifically mention that in the HTML for "p" tag.

Is the same approach applicable in WPF, or do we have to specifically
mention the style

<TextBlock Text="Test" Style="{DynamicResource SomeTextblockStyle}" />

in the XAML

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风向决定发型 2024-12-10 22:13:08

您当然可以为每种类型设置默认样式。您可以在 Generic.xaml 中执行此操作,请注意,我没有提供密钥。

<Style TargetType="{x:Type Button}">
     <Setter Property="Height" Value="25"/>
     <Setter Property="Foreground" Value="White"/>
</Style>

这将为应用程序中的每个 Button 实例设置样式。

如果您要转到 XAML 文件并定义 Button 的实例,覆盖 Foreground 值,则该本地实例将优先于全局样式。

<Button Foreground="Black"/>

You can certainly set a default style for each type. You can do this within your Generic.xaml, note that I am not providing a key.

<Style TargetType="{x:Type Button}">
     <Setter Property="Height" Value="25"/>
     <Setter Property="Foreground" Value="White"/>
</Style>

This will style every instance of a Button within your application as such.

If you were go to a XAML file and define an instance of a Button, overriding the Foreground value, that local instance will take precedence over the global style.

<Button Foreground="Black"/>
巷雨优美回忆 2024-12-10 22:13:08

使用 key And 一样设置样式

<Style TargetType="{x:Type TextBlock}" x:Key="myStyle">
   <Setter Property="Margin" Value="20"/>
   <Setter Property="FontFamily" Value="Tahoma"/>
</Style>

您可以像在 Window.Xaml 中

<TextBlock Text="Hello" Style="{DynamicResource myStyle}"/>

You can set style like using key

<Style TargetType="{x:Type TextBlock}" x:Key="myStyle">
   <Setter Property="Margin" Value="20"/>
   <Setter Property="FontFamily" Value="Tahoma"/>
</Style>

And in the Window.Xaml

<TextBlock Text="Hello" Style="{DynamicResource myStyle}"/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文