11

WPFエクスパンダを使用して、コントロールが展開されたときにヘッダーを[もっと見る]から[もっと見る]に変更し、再び折りたたまれたときに[もっと見る]に戻したいと思います。C#やその他のコードビハインドメソッドではなく、WPFの純粋なソリューションをお勧めします。これは簡単なはずだと思いますが、グーグルで解決策を得るのに適切な条件を見つけるのに苦労しています。

ありがとう!

4

2 に答える 2

23

あなたはおそらくスタイルトリガーでこれを行うことができます:

<Expander>
    <Expander.Style>
        <Style TargetType="Expander">
            <Setter Property="IsExpanded" Value="False" />
            <Setter Property="Header" Value="See More" />

            <Style.Triggers>
                <DataTrigger Binding="{Binding IsExpanded,RelativeSource={RelativeSource Self}}" Value="True">
                    <Setter Property="Header" Value="See Less" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Expander.Style>
</Expander>

それはテストされていませんが、それはあなたに何かを続けるための何かを与えるはずです。

于 2010-04-09T00:06:18.300 に答える
8

古い(私は知っています)が、これはTriggerバインドせずに2つの単純なものを使用して行うことができます:

<Expander>
    <Expander.Style>
        <Style TargetType="Expander" >
            <Style.Triggers>
                <Trigger Property="IsExpanded" Value="True">
                    <Setter Property="Header" Value="See Less" />
                </Trigger>
                <Trigger Property="IsExpanded" Value="False">
                    <Setter Property="Header" Value="See More" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </Expander.Style>
</Expander>
于 2015-07-08T09:29:19.343 に答える