2013年04月03日

WPFサンプル:イメージで領域を塗りつぶす

   このエントリーをはてなブックマークに追加 Clip to Evernote
ImageBrushを使うと、イメージで領域を塗りつぶすことができます。
ここで示すサンプルでは4つの例を示しています。

ImageBrush

それぞれ、Border.Background、Button.Background、Rectangle.Fill、TextBox.Background に
ImageBrushを適用しています。

ImageBrushにはStreachプロパティがあり、イメージの引き伸ばし方法を指定します。
指定できるのは、None、Uniform、UniformToFill、Fillの4種類です。

None : 元のサイズのまま何もしない。
Uniform : 縦横比を維持したまま、領域内に収まるよう伸縮する。
UniformToFill : 縦横比を維持しながら、領域を完全に塗りつぶすように伸縮する。
Fill : 領域を完全に塗りつぶすよう伸縮する。縦横比は維持しない。

また、TileModeプロパティに "Tile"を指定することで、タイル形式で領域を塗りつぶすことができます。
Viewportプロパティで、基本タイルの位置とサイズを指定します。サイズは、既定では全体を1とした相対的なサイズです。
右上がその例です。

XAMLを示します。


Opacityプロパティで、背景の不透明度を指定します。Opacity の値を 0 にするとブラシは完全に透明になり、
Opacity の値を 1 にするとブラシは完全に不透明になります。
TextBoxの例では、Opacityプロパティに0.3を指定しています。
Opacityは、ImageBrushを始め、Brushクラスの派生クラスで利用できます。

Koaka.jpgファイルは、Visual StudioのプロジェクトにResourcesフォルダを作成し、そこに追加してください。
Koaka.jpgファイルのビルドアクッションプロパティが、Resource(規定値)になっている必要があります。



 

この記事へのトラックバックURL

http://trackback.blogsys.jp/livedoor/gushwell/52312268