第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

動畫按鈕 WPF

動畫按鈕 WPF

C#
人到中年有點甜 2021-10-23 17:06:08
謝謝參觀。我的目標(biāo)是在 WPF 中創(chuàng)建一個類似于此頁面上的“立即開始”按鈕的按鈕模板,除了單擊時沒有金色邊框。我尋求的效果是一個“3D”外觀按鈕被推入頁面,只要按住按下,最好也有顏色變化。為此,我想:在控件模板中指定一個矩形在它前面指定第二個矩形,相對于第一個矩形稍微向上移動。單擊控件時,將前景矩形向下移動以覆蓋背景矩形。為此,我不知道如何為元素的一部分設(shè)置動畫。編輯:將問題集中在一個問題上編輯:示例按鈕:<Style TargetType="Button"       x:Key='3D'>  <Setter Property="OverridesDefaultStyle"          Value="True" />  <Setter Property="Template">    <Setter.Value>      <ControlTemplate TargetType="Button">          <Grid>          <Border CornerRadius='5'                  BorderBrush="Black"                  BorderThickness="0,0,0,2">            <Rectangle Fill="Gray"/>          </Border>          <Border CornerRadius='5'                  BorderBrush="Black"                  BorderThickness="0,0,0,2"                  Margin='0,0,0,10'>            <Grid>                <Rectangle Fill="LightGray" />                <ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}"                                  Content="{TemplateBinding Content}"                                  HorizontalAlignment="Center"                                                                VerticalAlignment="Center" />            </Grid>          </Border>        </Grid>        </ControlTemplate>    </Setter.Value>  </Setter><Style.Triggers>    <MultiDataTrigger>      <MultiDataTrigger.Conditions>        <Condition Binding='{Binding RelativeSource={RelativeSource Self}, Path=IsPressed}'        <!-- Some other conditions -->      </MultiDataTrigger.Conditions>      <MultiDataTrigger.EnterActions>        <BeginStoryboard>          <Storyboard>              <!--Animation that moves the top rectangle down -->          </Storyboard>        </BeginStoryboard>      </MultiDataTrigger.EnterActions>    </MultiDataTrigger>  </Style.Triggers></Style>
查看完整描述

1 回答

?
呼啦一陣風(fēng)

TA貢獻(xiàn)1802條經(jīng)驗 獲得超6個贊

一種解決方案是為邊框的邊距設(shè)置動畫。此外,我必須將觸發(fā)器從 Style.Triggers 移動到 ControlTemplate.Triggers 以訪問作為目標(biāo)的邊框。


<Style TargetType="Button"

       x:Key='Circular'>

  <!--Set to true to not get any properties from the themes.-->

  <Setter Property="OverridesDefaultStyle"

          Value="True" />

  <Setter Property="Template">

    <Setter.Value>

      <ControlTemplate TargetType="Button">


        <Grid>

          <Border x:Name='_bottom'

                  CornerRadius='5'

                  BorderBrush="Black"

                  BorderThickness="0,0,0,2">

            <Rectangle Fill="Gray" />

          </Border>

          <Border x:Name='_top'

                  CornerRadius='5'

                  BorderBrush="Black"

                  BorderThickness="0,0,0,2"

                  Margin='0,0,0,10'>

            <Grid>

              <Rectangle Fill="LightGray" />

              <ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}"

                                Content="{TemplateBinding Content}"

                                HorizontalAlignment="Center"

                                VerticalAlignment="Center" />

            </Grid>

          </Border>

        </Grid>


        <ControlTemplate.Triggers>

          <MultiDataTrigger>

            <MultiDataTrigger.Conditions>

              <Condition Binding='{Binding RelativeSource={RelativeSource Self}, Path=IsPressed}'

                         Value='True' />

            </MultiDataTrigger.Conditions>


            <MultiDataTrigger.EnterActions>

              <BeginStoryboard>

                <Storyboard>

                  <ThicknessAnimation Storyboard.TargetProperty="Margin"

                                      Storyboard.TargetName="_top"

                                      Duration="0:0:0.1"

                                      From="0,0,0,10"

                                      To="0,10,0,0" />

                  <ThicknessAnimation Storyboard.TargetProperty="Margin"

                                      Storyboard.TargetName="_bottom"

                                      Duration="0:0:0.1"

                                      From="0,0,0,0"

                                      To="0,10,0,0" />

                </Storyboard>

              </BeginStoryboard>

            </MultiDataTrigger.EnterActions>

            <MultiDataTrigger.ExitActions>

              <BeginStoryboard>

                <Storyboard>

                  <ThicknessAnimation Storyboard.TargetProperty="Margin"

                                      Storyboard.TargetName="_top"

                                      Duration="0:0:0.1"

                                      From="0,10,0,0"

                                      To="0,0,0,10" />

                  <ThicknessAnimation Storyboard.TargetProperty="Margin"

                                      Storyboard.TargetName="_bottom"

                                      Duration="0:0:0.1"

                                      From="0,10,0,0"

                                      To="0,0,0,0" />

                </Storyboard>

              </BeginStoryboard>

            </MultiDataTrigger.ExitActions>

          </MultiDataTrigger>

        </ControlTemplate.Triggers>

      </ControlTemplate>

    </Setter.Value>

  </Setter>


</Style>


查看完整回答
反對 回復(fù) 2021-10-23
  • 1 回答
  • 0 關(guān)注
  • 192 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號