0

WPF のコード行を最小限に抑えるために、すべてのコントロールは、次のような BaseControlStyle というスタイルから継承します。

<Style x:Key="BaseControlStyle" TargetType="{x:Type FrameworkElement}">
    <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
    <Setter Property="SnapsToDevicePixels" Value="True"/>
    <Style.Triggers>
        <Trigger Property="IsEnabled" Value="false">
            <Setter Property="Opacity" Value="0.5"/>
        </Trigger>
    </Style.Triggers>
</Style>

新しいボタン スタイルは次のようになります。

<Style x:Key="ButtonStyle" TargetType={x:Type Button} BasedOn="{StaticResource BaseControlStyle}">
....
</Style>

しかし、Silverlight を初めて使用するので、この BaseControlStyle を VisualStateManager (またはその他のもの) を使用する SilverlightBaseControlStyle に転送できるかどうか、答えが見つかりませんでした。

4

2 に答える 2

2

残念ながら、Silverlight はこのタイプの使用をサポートしていません。

BasedOn="{StaticResource {x:Type Button}}"
于 2012-04-26T08:55:40.710 に答える
0

残念ながら、Silverlight にはプロパティ トリガーのようなものはありません。代わりに Visual States が使用されます。これは、コードで外観を処理することを意味します。あなたの場合のようなタスクでは、標準のボタンのスタイルのコピーを作成し、デフォルトの ControlTemplate でアニメーションを変更する方が簡単です。ビヘイビアを使用すると便利な場合もあります。

于 2012-04-26T08:53:09.427 に答える