2009-12-08 3 views
0

Я изо всех сил пытаюсь заставить PropertyPath работать - у меня есть трансформация в Ресурсах Windows, которые я пытаюсь повлиять через StoryBoard, также в окне Ресурсы ...WPF PropertyPath Issue - не удается разрешить все ссылки на свойства в пути свойств

Heres путь свойство я использую ...

(Viewport2DVisual3D.Transform).(Transform3DGroup)[0].(RotateTransform3D).(RotateTransform3D.Rotation).(AxisAngleRotation3D.Angle) 

EDIT:. Благодаря Anurags предложение я получил немного дальше ... (Viewport2DVisual3D.Transform) (Transform3DGroup.Children) [0]. (RotateTransform3D.Rotation). (AxisAngleRotation3D.Angle)

, но теперь ошибки с «Свойством вращения не указывают на DependencyProperty»

Может ли кто-нибудь вернуть меня обратно?

Heres код в ...

<Window 
x:Class="WpfApplication1.Window1" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
Height="300" Width="300"> 
    <Window.Resources> 

     <Transform3DGroup x:Key="WorldTranslation"> 
      <RotateTransform3D> 
       <RotateTransform3D.Rotation> 
        <AxisAngleRotation3D Axis="0,1,0" Angle="0" /> 
       </RotateTransform3D.Rotation> 
      </RotateTransform3D> 
     </Transform3DGroup> 

      <Storyboard x:Key="MyStoryboard"> 
     <DoubleAnimation 
     Storyboard.Target="{Binding TemplatedParent}"  
     Storyboard.TargetProperty="(Viewport2DVisual3D.Transform).(Transform3DGroup.Children)[0].(RotateTransform3D.Rotation).(AxisAngleRotation3D.Angle)" 
     From="0.0" To="360" Duration="0:0:1" /> 
    </Storyboard> 

     <MeshGeometry3D 
      x:Key="squareMeshFrontLeft" 
      Positions="-1,-1,1 1,-1,1 1,1,1 -1,1,1" 
      TriangleIndices="0 1 2 0 2 3" 
      TextureCoordinates="0,1 1,1 1,0 0,0" /> 

     <DiffuseMaterial x:Key="visualHostMaterial" Brush="White" Viewport2DVisual3D.IsVisualHostMaterial="True" /> 
    </Window.Resources> 

    <Viewport3D> 
     <Viewport3D.Camera> 
      <PerspectiveCamera Position="0,0,10" LookDirection="0,0,-1" /> 
     </Viewport3D.Camera> 
     <Viewport2DVisual3D Material="{StaticResource visualHostMaterial}" Geometry="{StaticResource squareMeshFrontLeft}" > 
      <Viewport2DVisual3D.Transform> 
       <StaticResource ResourceKey="WorldTranslation" /> 
      </Viewport2DVisual3D.Transform> 
      <StackPanel Background="Blue" Width="80" Height="80"> 
       <Button Height="30" Margin="20"> 
        <Button.Content>Blah</Button.Content> 
        <Button.Triggers> 
         <EventTrigger RoutedEvent="Button.Click"> 
          <EventTrigger.Actions> 
           <BeginStoryboard Storyboard="{StaticResource MyStoryboard}" > 
           </BeginStoryboard> 
          </EventTrigger.Actions> 
         </EventTrigger> 
        </Button.Triggers> 
       </Button> 
      </StackPanel> 
     </Viewport2DVisual3D> 
       <ModelVisual3D> 
      <ModelVisual3D.Content> 
       <AmbientLight Color="White" /> 
      </ModelVisual3D.Content> 
     </ModelVisual3D> 
    </Viewport3D> 
</Window> 

ответ

1

Прежде всего, вместо DoubleAnimation, использовать 3D-анимации KeyFrame.

и исправить синтаксис вашего StoryBoard.TargetProperty, используя (Transform3DGroup.Children) вместо

проверки это также: http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/78170274-a585-4cd6-85ed-edfd655d34ab

+0

Привет, спасибо за вашу помощь, я буду определенно взглянуть на использовании KeyFrames вместо моей двойной анимации, но в отношении пути собственности - я попытался добавить. Дети, как вы предложили, я также удалил первый RotateTransform3D, поскольку понял, что он не нужен ... вот что у меня есть ... (Viewport2DVisual3D.Transform). (Transform3DGroup.Children) [0]. (RotateTransform3D.Rotation). (AxisAngleRotation3D.Angle) Но теперь ошибки с атрибутом 'Rotation' не указывают на объект зависимостей. У вас есть идеи, пожалуйста? –

+0

Same Error Я также получаю при использовании Double Animation, Thats, почему я сказал использовать 3D-анимацию KeyFrame вместо DoubleAnimation. Не удалось получить время, чтобы проверить его с помощью 3D-анимации KeyFrame, вы пытаетесь! – viky

Смежные вопросы