2010-11-04 17 views
0

如果我把viewport3D放在Canvas中,我的viewport3D不再可見。如果我刪除Canvas,那麼Viewport3D將再次可見。我做錯了什麼?Viewport3D ModelVisuals3D在Canvas中不可見

  <Canvas Width="900" Height="524"> 
      <Viewport3D Name="mainViewport" ClipToBounds="True" HitTestVisible="False"> 
         <Viewport3D.Camera> 
          <PerspectiveCamera 
           FarPlaneDistance="3500" 
           LookDirection="0,0,1" 
           UpDirection="0,1,0" 
           NearPlaneDistance="1" 
           Position="0,0,0" 
           FieldOfView="66" /> 
         </Viewport3D.Camera> 
         <ModelVisual3D> 
          <ModelVisual3D.Content> 
           <AmbientLight Color="White" /> 
          </ModelVisual3D.Content> 
         </ModelVisual3D> 
        </Viewport3D> 
      </Canvas> 

回答

0

我想的Viewport3D將與寬度畫布的左上角和高度的0結束了,因爲帆布從未舒展它的孩子。嘗試添加Canvas.Left和Canvas.Top來定位你的選擇,然後爲你的Viewport3D添加寬度和高度。如果您希望Viewport3D始終填充可用空間,則Canvas是錯誤的路線。

<Canvas Width="900" Height="524"> 
    <Viewport3D Canvas.Left="100" 
       Canvas.Top="100" 
       Width="200" 
       Height="200" 
       Name="mainViewport" 
       ClipToBounds="True" 
       IsHitTestVisible="False"> 
     <Viewport3D.Camera> 
      <PerspectiveCamera 
         FarPlaneDistance="3500" 
         LookDirection="0,0,1" 
         UpDirection="0,1,0" 
         NearPlaneDistance="1" 
         Position="0,0,0" 
         FieldOfView="66" /> 
     </Viewport3D.Camera> 
     <ModelVisual3D> 
      <ModelVisual3D.Content> 
       <AmbientLight Color="White" /> 
      </ModelVisual3D.Content> 
     </ModelVisual3D> 
    </Viewport3D> 
</Canvas> 
相關問題