c# - WPF。在后面的代码中使用 xaml 中的按钮样式

标签 c# wpf xaml styles code-behind

我在代码后面创建按钮,现在必须使用 xaml 中的样式,我如何在 c# 中为我的按钮调用该样式?

public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            this.Loaded += OnLoaded;
        }

        private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
        {

           var button1 = new Button();

            TestPanel.Children.Add(button1);
        }
    }
}

样式是 <Style x:Key="ButtonStyle" TargetType="{x:Type Button}">

最佳答案

只需设置它:

Style myStyle = (Style)Resources["ButtonStyle"];
button1.Style = myStyle;

请注意,来自 Resources 字典的项目必须转换为它们的实际类型。

也就是说,您不应该在代码隐藏中创建控件。在 99.99% 的情况下,您应该在 XAML 中执行此操作并在其中分配样式。

关于c# - WPF。在后面的代码中使用 xaml 中的按钮样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31681871/

相关文章:

c# - 如何更改 TabItem 的光标

c# - WPF 数据绑定(bind) : Nullable Int still gets a validation error?

c# - 创建对象泛型类

c# - Windows Phone 的 Windows 应用商店应用程序上的照片捕获

单击选项卡时 WPF 控件失去焦点

c# - WPF 错误还是我要疯了?

c# - XAML 基于绑定(bind)改变框架背景

c# - 在 C# 中运行 Windows 窗体时访问和更改 txt 文档

c# - 客户端/服务器握手使用 RestSharp 失败,但在 Postman 和使用 Fiddler 作为代理时工作正常。证书长度 0

c# - 将所选项目写入 ObservableCollection