TextBlock
一般用於顯示文本的元素,我們最爲經常用到的是該類的Text屬性,其實顯示文本有兩種呈現方式,一個是設置內部文本Text,另一種就是在Inlines 集合中創建一個新的 Run 對象和LineBreak對象,我們稱之爲內聯文本;【作者:神舟龍】
Run 標籤內容成爲 Text 屬性的值,該類具有TextBlock類所具有的部分屬性,比如FontFamily,FontSize,FontStretch,Foregroud等等;
LineBreak 新起一行,是換行標籤
- <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
- <TextBlock x:Name="tbShow" Text="文字示例" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center">
- <TextBlock.Inlines>
- <Run Foreground="Blue" Text="ddd" ></Run>
- </TextBlock.Inlines>
- </TextBlock>
- </Grid>
可以看到我們在Run標籤和TextBlock標籤都設置的前景色和顯示的文字,可是效果如何那,效果:
所以我們確定如果TextBlock標籤和TextBlock標籤內定義Run標籤的屬性相重複時,兩者的屬性互不相干,但是Run設置的顯示文本在TextBlock屬性Text之後,要把程序運行起來,設計器直接看會是這樣的錯誤結果,
再看下面的例子,我們對Run標籤的一些屬性進行了一些羅列:
- <!--ContentPanel - 在此處放置其他內容-->
- <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
- <TextBlock x:Name="tbShow" Text="文字示例" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center">
- <Run Foreground="Blue">前景色Blue</Run><LineBreak></LineBreak>
- <Run FontStyle="Italic">字體樣式Italic</Run><LineBreak></LineBreak>
- <Run FontSize="30">字體30</Run><LineBreak></LineBreak>
- <Run TextDecorations="Underline">下劃線</Run><LineBreak></LineBreak>
- <Run TextDecorations="Underline"
- FontSize="30"
- FontStyle="Italic"
- Foreground="Blue"
- Text="綜合" ></Run><LineBreak></LineBreak>
- </TextBlock>
- </Grid>
實現的是這樣的效果:
上面介紹到的是Inlines 集合的內聯文本,這是說說TextBlock屬性Text的一些特殊用法
案例代碼:
- <!--ContentPanel - 在此處放置其他內容-->
- <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
- <TextBlock x:Name="tbShow" Foreground="White"
- VerticalAlignment="Center" HorizontalAlignment="Center"
- Text="π表示3.14"
- >
- </TextBlock>
- </Grid>
它實現的效果是:
還比如。表示句號(。), 表示回車, 表示換行,當然你可以看出格式都差不多,可以更改最後一個字母或數字看看變成什麼,比如
也可以設置文本對齊方式,TextAlignment屬性可以甚至爲:left,right,center;
如果你在textblock設置了fontfamily屬性,並且名字寫錯的話,不會造成什麼後果,系統會使用默認的字體 ,但是從隱藏文件獲取字體的話還是獲取到的是錯誤字體;
MediaElement
表示的是播放媒體,目前支持mp4,wma,mp3,wmv(ps:我剛剛從優酷找到一個swf格式的不支持),MediaElement的屬性AutoPlay屬性默認爲True,所以當視頻緩衝到可以播放的時候,視頻會自動播放
參考書上的地址設置了播放源,xaml代碼如下
- <!--ContentPanel - 在此處放置其他內容-->
- <Grid x:Name="ContentPanel" Background="AntiqueWhite" Grid.Row="1" Margin="12,0,12,0">
- <MediaElement Source="http://www.charlespetzold.com/Media/Walrus.wmv" ></MediaElement>
- </Grid>
在播放途中截圖:
話說這就是Charles Petzold,不管怎樣感謝他帶給我們的知識,也可訪問他本人的網站http://www.charlespetzold.com/