ImageBrush.ImageSource プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
この ImageBrush によって表示されるイメージ ソースを取得または設定します。 コードでは、 ImageSource サブクラス インスタンスでこれを設定します。XAML では、これを URI でイメージ ソース ファイルに設定します。
public:
property ImageSource ^ ImageSource { ImageSource ^ get(); void set(ImageSource ^ value); };
ImageSource ImageSource();
void ImageSource(ImageSource value);
public ImageSource ImageSource { get; set; }
var imageSource = imageBrush.imageSource;
imageBrush.imageSource = imageSource;
Public Property ImageSource As ImageSource
<ImageBrush ImageSource="imageUri"/>
プロパティ値
この ImageBrush がコンテンツに適用されるときに表示される、イメージ ソースを表すオブジェクト。
注釈
イメージ ソース ファイルまたはストリームからイメージ ソースを設定することは、本質的に非同期アクションです。 有効なイメージ ソース ファイルに解決できない URI (Uniform Resource Identifier) 値にソースを設定しても、エラーはスローされません。 代わりに、ImageBrush で ImageFailed イベントが発生します。 イメージ ソース ファイルが正しく読み込まれたことを確認する場合は、 ImageOpened を検証用に処理できます。また、フォールバック イメージ ソースを提供したり、UI を再計算したりする方法として ImageFailed を処理することもできます。
XAML での ImageSource の設定
このプロパティは XAML で設定できますが、この場合は、ImageSource 属性値を Uniform Resource Identifier (URI) を表す文字列として設定します。 この動作は、文字列を UNIFORM Resource Identifier (URI) として処理し、 BitmapImage(Uri) コンストラクターと同等の内部を呼び出す、基になる型変換に依存します。
XAML の初期 ImageSource 属性値で有効なソースが指定されていない場合、 ImageFailed イベントが発生する可能性があります。 相対パスを使用して、アプリでパッケージ化したイメージを参照するか、絶対 Uniform Resource Identifier (URI) を使用してサーバーからイメージを参照できます。 アプリの一部としてパッケージ化されたイメージ ソースを使用している場合は、 ms-appx または ms-resource スキームを使用するのが一般的です。
コードでの ImageSource の設定
コードを使用して ImageBrush を定義する場合、ImageBrush.ImageSource には、コード内に (URI (Uniform Resource Identifier) ではなく) BitmapImage が必要です。 ソースがストリームの場合は、 SetSourceAsync メソッドを使用して値を初期化します。 ソースが、 ms-appx または ms-resource スキームを使用するアプリ内のコンテンツを含むファイルを参照する URI (Uniform Resource Identifier) である場合は、Uniform Resource Identifier (URI) を受け取る BitmapImage コンストラクターを使用します。 イメージ ソースが使えるようになるまで代替コンテンツを表示することが必要であるなど、イメージ ソースの取得やデコードについてタイミングの問題がある場合は、ImageOpened イベントを処理することも検討してください。 コード例については、 XAML イメージのサンプル を参照してください。
リソース要求のスコープを設定するために UI 内の別のオブジェクトに関連する URI を作成する必要がある場合は、UI 内の別のオブジェクトで呼び出される FrameworkElement.BaseUri プロパティを使用できます。 これにより、XAML ページがアプリのプロジェクト構造内から取得されるベース URI が提供されます。
Note
現在のスケール修飾子とカルチャ修飾子を使用して非修飾リソースにアクセスする場合は自動処理を使用できます。また、 ResourceManager と ResourceMap をカルチャとスケールの修飾子と共に使用してリソースを直接取得することもできます。 詳細については、「 リソース管理システム」を参照してください。
イメージ ソースとスケーリング
Windows 8スケーリングしたときにアプリが適切に表示されるように、いくつかの推奨サイズでイメージ ソースを作成する必要があります。 ImageBrush に ImageSource を指定する場合は、現在のスケーリングに適したリソースを自動的に参照する名前付け規則を使用できます。 名前付け規則の詳細と詳細については、「 Quickstart: ファイルまたはイメージ リソースの使用」を参照してください。
スケーリングの設計方法の詳細については、 レイアウトとスケーリングに関する UX ガイドラインを参照してください。
アプリ リソースの詳細と、アプリにイメージ ソースをパッケージ化する方法については、「 アプリ リソースの定義」を参照してください。