10
<StackPanel>
    <TextBox Text="" x:Name="input"/>
    <Button Content="DataTrigger Before">
        <Button.Style>
            <Style TargetType="Button">
                <Style.Triggers>
                    <DataTrigger Binding="{Binding ElementName=input, Path=Text}" Value="1">
                        <Setter Property="Content" Value="Changed"></Setter>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </Button.Style>
    </Button>
</StackPanel>

ボタン コンテンツのスタイル DataTrigger セッターが無効です

ありがとう

4

1 に答える 1

32

Button宣言内で設定したため、 DataTriggerはプロパティの値を変更しません。そのため、一度設定すると変更されることはありません。変更を許可するには、Style内に値を設定する必要があります。Content

これは機能します(私は試しました):

<StackPanel>
    <TextBox Name="input"/>
    <Button>
        <Button.Style>
            <Style TargetType="Button">
                <Setter Property="Content" Value="DataTrigger Before"></Setter>
                <Style.Triggers>
                    <DataTrigger Binding="{Binding ElementName=input, Path=Text}" Value="1">
                        <Setter Property="Content" Value="Changed"></Setter>
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </Button.Style>
    </Button>
</StackPanel>
于 2012-10-25T05:01:37.713 に答える