Windows Phone 為指定容器內的元素設定樣式

來源:互聯網
上載者:User

標籤:

在Windows Phone中設定元素樣式有多種
拿TextBlock來說
1、我們可以直接在控制項上設定:
  <TextBlock  Text="自身樣式設定"  Width="270" FontSize="20" Foreground="#FF6B6A6A"/>
2、也可以這樣:在頁面的靜態資源中設定
<phone:PhoneApplicationPage.Resources>        <Style TargetType="TextBlock"  x:Name="NomalStyle" >            <Setter Property="Foreground" Value="#FF6B6A6A" ></Setter>            <Setter Property="TextTrimming" Value="WordEllipsis"></Setter>            <Setter Property="Width" Value="270"></Setter>            <Setter Property="FontSize" Value="20"></Setter>        </Style></phone:PhoneApplicationPage.Resources><!--通過Style屬性設定樣式--><TextBlock Text="通過Style設定樣式"  Style="{StaticResource NomalStyle}"  /><!--通過Style屬性設定樣式,增加或修改樣式--><TextBlock Text="通過Style設定樣式,但FontSize屬性以我為準,我又比樣式多了Margin屬性"  Style="{StaticResource NomalStyle}" FontSize="50" Margin="12,0" />

 

3、如果要設定當前頁面的所有TextBlock的公用樣式的話,可以將上述的x:Name去掉便可,所在頁面的TextBlock都會使用頁面資源裡設定的樣式
<phone:PhoneApplicationPage.Resources>        <Style TargetType="TextBlock">            <Setter Property="Foreground" Value="#FF6B6A6A" ></Setter>            <Setter Property="TextTrimming" Value="WordEllipsis"></Setter>            <Setter Property="Width" Value="270"></Setter>            <Setter Property="FontSize" Value="20"></Setter>        </Style></phone:PhoneApplicationPage.Resources><!--使用頁面樣式資源設定樣式--><TextBlock Text="使用頁面樣式資源設定樣式,我與下邊的文本一樣" /><TextBlock Text="使用頁面樣式資源設定樣式,我與上邊的文本一樣" /><!--使用頁面樣式資源設定樣式,增加或修改樣式--><TextBlock Text="使用頁面樣式資源設定樣式,但我與上邊的不一樣,但FontSize屬性以我為準,我又比樣式多了Margin屬性"  FontSize="50" Margin="12,0" />

 

4、如果整個項目中都想使用,那麼就將2或者3中介紹的資源放在App.Xaml中的 <Application.Resources> </Application.Resources>的節點中
5、局部樣式怎麼設定呢?比如:設定StackPanel中的所有TextBlock的樣式,除了用上述2的方法設定Style之外還有什麼方法呢?由方法2可發現,Style放在頁面資源中,那麼是否能將Style放在StackPanel的內部資源中呢,經過實現是可以的
<StackPanel>    <StackPanel.Resources>        <Style  TargetType="TextBlock">            <Setter  Property="Foreground" Value="#FF6B6A6A" ></Setter>            <Setter Property="Width" Value="37"></Setter>            <Setter Property="FontSize" Value="27"></Setter>            <Setter Property="Margin" Value="0"></Setter>            <Setter Property="TextWrapping" Value="Wrap"></Setter>            <Setter Property="TextAlignment" Value="Center"></Setter>        </Style>    </StackPanel.Resources>    <TextBlock Text="我使用的是StackPanel內部的樣式,不受全域樣式資源檔控制" />    <TextBlock Text="我使用的是StackPanel內部的樣式,不受全域樣式資源檔控制" /> </StackPanel>
 以上為個人觀點,如有問題,請指正。

 

Windows Phone 為指定容器內的元素設定樣式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.