2012-10-02 36 views
1

我從景觀切換到填充視圖並在第一次從一個頁面導航到另一個頁面時,我的應用程序變黑。後來它工作正常,但第一次它變黑。 即使它從填充切換到橫向視圖時也會變黑,並且第一次從一頁導航到另一頁。後來它工作正常,但第一次它變黑。我的代碼是用C#和XAML編寫的。 當我從景觀切換到填充或反之亦然時,我不會更改任何內容。 我只在視圖從對齊變爲填充/橫向時反之亦然。屏幕在Metro應用中變爲黑色

+0

您是否使用W8的RTM或預覽版?我在預覽版中遇到了這個問題,但是當我安裝了RTM版本 –

+0

時,它停止了。我正在使用最終的RTM ..我找出問題所在,但我找不出解決方案。我發現我無法調整文本框的大小(基本上是字體大小)。如果我這樣做,那麼只有我的屏幕會變黑。 – user1714962

+0

我正在使用最終的RTM ..我想出了什麼問題,但我可以找不到解決方案。我發現我無法調整文本框的大小(基本上是字體大小)。如果我這樣做,那麼只有我的屏幕會變黑。任何解決方案?我需要在切換視圖時調整一些文本塊的大小.. – user1714962

回答

1

而不是調整現有內容的大小,可能會更容易有一個獨立的內容集隱藏,直到用戶移動到捕捉模式。

使用VisualStateGroups隱藏/顯示給定全屏/快照視圖的適當內容集。

所以不是調整現有油田:

<Page> 
    <Grid> 
     <Grid x:Name="FullScreenLayout">... 
     </Grid> 
     <Grid x:Name="SnappedScreenLayout">... 
     </Grid> 
     <VisualStateManager.VisualStateGroups> 

      <!-- Visual states reflect the application's view state --> 
      <VisualStateGroup x:Name="ApplicationViewStates"> 
       <VisualState x:Name="Snapped"> 
        <Storyboard> 
         <ObjectAnimationUsingKeyFrames Storyboard.TargetName="FullScreenLayout" Storyboard.TargetProperty="Visibility"> 
          <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/> 
         </ObjectAnimationUsingKeyFrames> 
         <ObjectAnimationUsingKeyFrames Storyboard.TargetName="SnappedScreenLayout" Storyboard.TargetProperty="Visibility"> 
          <DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/> 
         </ObjectAnimationUsingKeyFrames>  
        </Storyboard> 
       </VisualState> 
      </VisualStateGroup> 
     </VisualStateManager.VisualStateGroups> 
    </Grid> 
</Page> 

這裏只是隱藏全屏佈局時,我們在抓拍模式,並顯示我們的搶購模式佈局。還有更多的Xaml,但它包含在內,並允許您提供視圖特定的佈局,這使Xaml更清晰,更易於閱讀。

+0

我明白你的觀點,但你不覺得應該有其他解決方案嗎?我的意思是我必須爲Snap View單獨開發一個完整的用戶界面。 – user1714962

+1

我認爲這是MS希望你做的事,而項目模板創建一個單獨的,隱藏的,僅在Snapped View中顯示的ListView。大多數應用程序將在Snapped視圖中具有完全不同的功能和佈局(我的做法)。這是我參加早期採用者會議時從MS獲得的反饋。 –