2016-11-09 39 views
1

美好的一天,簡單的XAML VisualStateManager

我正在學習XAML的基礎知識,目前在VisualSateManager主題上。

我試圖得到一個非常簡單的代碼的工作:要改變大小時,窗口的顏色和字體大小。不過,這是行不通的。 「應用程序」啓動罰款,但調整大小不會改變任何東西。

任何援助將不勝感激。先謝謝你。

<Grid Name="ColorGrid" Background="Pink"> 
     <VisualStateManager.VisualStateGroups> 
      <VisualStateGroup x:Name="VisualStateGroup"> 
       <VisualState x:Name="VisualStatePhone"> 
        <VisualState.StateTriggers> 
         <AdaptiveTrigger MinWindowWidth="0"/> 
        </VisualState.StateTriggers> 
        <VisualState.Setters> 
         <Setter Target="ColorGrid.Background" Value="Red"/> 
         <Setter Target="MessageTextBlock.Fontsize" Value="18"/> 
        </VisualState.Setters> 
       </VisualState> 
       <VisualState x:Name="VisualStateTablet"> 
        <VisualState.StateTriggers> 
         <AdaptiveTrigger MinWindowWidth="600"/> 
        </VisualState.StateTriggers> 
        <VisualState.Setters> 
         <Setter Target="ColorGrid.Background" Value="Yellow"/> 
         <Setter Target="MessageTextBlock.Fontsize" Value="40"/> 
        </VisualState.Setters> 
       </VisualState> 
       <VisualState x:Name="VisualStateDesktop"> 
        <VisualState.StateTriggers> 
         <AdaptiveTrigger MinWindowWidth="800"/> 
        </VisualState.StateTriggers> 
        <VisualState.Setters> 
         <Setter Target="ColorGrid.Background" Value="Blue"/> 
         <Setter Target="MessageTextBlock.Fontsize" Value="60"/> 
        </VisualState.Setters> 
       </VisualState> 
      </VisualStateGroup> 
     </VisualStateManager.VisualStateGroups> 

     <TextBlock Name="MessageTextBlock" Text="Hello I am forgetting something"/> 

    </Grid> 

回答

1

屬性名稱區分大小寫。更改這些:

<Setter Target="MessageTextBlock.Fontsize" Value="60"/> 

...這(注意:FontSize而不是Fontsize):(有三個出現)

<Setter Target="MessageTextBlock.FontSize" Value="60"/> 

顏色變化工作對我來說只是通過複製你的XAML,只要我提供就跑這個程序(Ctrl + F5)。啓動調試器(F5)導致粉紅色背景。

+0

謝謝。 FontSize是問題。我現在感覺很傻。 –