1

ContentPresenter 内に「PART_closeButton」という名前のボタンがあります。ボタンの視覚的な状態を定義しています。

    <VisualStateGroup x:Name="CommonStates">
          <VisualState x:Name="MouseOver">
                <Storyboard>
                    <DoubleAnimation Duration="0" To="1" 
Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PART_closeButton" d:IsOptimized="True"/>
                 </Storyboard>
          </VisualState>
          <VisualState x:Name="Normal">
                  <Storyboard>
                       <DoubleAnimation Duration="0" To="0.7" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="PARTcloseButton" d:IsOptimized="True"/>
                  </Storyboard>
           </VisualState>
    </VisualStateGroup>

だから、すべてが私のために働いています。ボタンの上にマウスを置くと、半透明になります。しかし、同じ名前のボタンも含む contentpresenter のデータテンプレートをロードすると、視覚的な状態が反応しなくなります。(mouseOver イベントはそのボタンでも処理され、発生します)。goToState が機能していません。実際のボタン オブジェクトが変更されていることはわかっています。VisualState は TargetName のボタンに接続されています。新しいボタンには同じ名前が付いているのに、statemanager が機能しないのはなぜですか?

4

0 に答える 0