2009年11月6日 星期五

在WPF中使用影像筆刷(ImageBrush)

在WPF中可以透過筆刷的設定,將圖片直接畫在各種使用筆刷的物件上面
比如說在文字方塊設定背景

<TextBlock FontSize="50">
<TextBlock.Background>
<ImageBrush ImageSource="img.jpg" />
</TextBlock.Background>
</TextBlock>

那顯示出來的會是

這時候可以換成設定前景,也就是文字色彩

<TextBlock FontSize="50">
<TextBlock.Foreground>
<ImageBrush ImageSource="img.jpg" />
</TextBlock.Foreground>
</TextBlock>

那結果就會變成

透過這樣的動作就可以做出很多變化的介面
不過這邊要注意一個問題
就是使用影像筆刷的圖可以有透明的背景
畫出來的時候當然那些區域會是透明的,不過大小並不會改變
比如說當你將很多張透明背景的圖疊在一起的時候
下面的圖基本上是沒辦法接收到滑鼠事件的

--
參考資料
ImageBrush 類別

沒有留言:

張貼留言