0

我有下一个用户控件:

<UserControl
x:Class="Test.Views.NavigationMenu"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:RTUforWindows8.Views"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<UserControl.Resources>
    <Style x:Key="HomeAppBarButtonStyle" TargetType="ButtonBase" BasedOn="{StaticResource AppBarButtonStyle}">
        <Setter Property="AutomationProperties.AutomationId" Value="HomeAppBarButton"/>
        <Setter Property="AutomationProperties.Name" Value="ewffgwefwfwefwefwe"/>
        <Setter Property="Content" Value="&#xE10F;"/>
    </Style>
</UserControl.Resources>

<StackPanel Orientation="Horizontal">
    <Button
        Style="{StaticResource HomeAppBarButtonStyle}" />
    <Button
        Style="{StaticResource AppBarButtonStyle}" />
</StackPanel>

在我的代码中,我想更改:

<Setter Property="AutomationProperties.Name" Value="ewffgwefwfwefwefwe"/>

对某事的价值,我做:

NavigationMenu NM = new NavigationMenu();
        var style = (NM.Resources["HomeAppBarButtonStyle"] as Style).Setters[1];

并且无法弄清楚如何输入设置此值?

这应该怎么看:

在此处输入图像描述

4

1 回答 1

0

入孵机是密封的。即使您将它们转换为 Setter 以访问属性 Value 来代替 SetterBase,当您尝试修改它们时,您也会遇到运行时异常。

我认为您可以在本主题中找到一个解决方案来做您想做的事情: 在 WPF 中动态更改样式

于 2013-10-07T11:39:35.490 回答