.net - 如何根据默认样式创建样式?

标签 .net wpf xaml silverlight

如何在Silverlight中创建基于默认样式的样式?

例如,在 WPF 中我们将其设置为:

<Style TargetType="{x:Type TextBox}" BasedOn="{StaticResource {x:Type TextBox}}">
  <Setter Property="Margin" Value="2" />
  <Setter Property="Padding" Value="2" />
</Style>

最佳答案

几乎一样。只需减去 x:Type 即可获得更明确的命名。

<Style TargetType="TextBox" BasedOn="{StaticResource DefaultTextBoxStyle}">

更多信息here in the docs 。 PS,如果您需要默认模板,例如 TextBox 通常可以在 CoreStyles.xaml 中找到

按照评论中的要求添加附录,以防您在第一次阅读答案时感到困惑;

您确实需要一个基本样式,这非常容易做到,因为您打算在 Silverlight 默认提供的应用程序主题中执行此操作(wpf/uwp 等不会有这些)创建了 ToolkitStyles.xaml、SDKStyles.xaml、CoreStyles.xaml 等文件......这就是答案中的静态资源名称的来源,目标是最初回答该问题的那一年的 silverlight 版本。”

关于.net - 如何根据默认样式创建样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13016932/

相关文章:

c# - 求解具有约束结果的最小二乘矩阵

.net - 使 Windows 应用程序始终位于其他窗口之上并处于焦点位置 - 始终

c# - WPF 将 ObservableCollection 绑定(bind)到 UserControl 的意外行为

c# - 与私有(private) CLR 属性相比,绑定(bind)私有(private)依赖属性的工作方式不同

c# - 如何绑定(bind)可观察集合以查看可观察集合中存在的项目数?

c# - 如何在 WPF 中创建自适应布局?

c# - 如何在 IntelliJ Rider 中生成 API Controller ?

C# WPF 应用程序在由使用 topshelf 创建的 Windows 服务启动时不显示表单

c# - 如果模型未实现 INotifyPropertyChanged, View 模型如何从其底层模型传播更改通知?

c# - 计算对数算法的时间