FrameworkElement.BaseUri プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
XAML の読み込み時に XAML で構築されたオブジェクトのベースの Uniform Resource Identifier (URI) を表す Uniform Resource Identifier (URI) を取得します。 このプロパティは、実行時の Uniform Resource Identifier (URI) 解決に役立ちます。
public:
property Uri ^ BaseUri { Uri ^ get(); };
Uri BaseUri();
public System.Uri BaseUri { get; }
var uri = frameworkElement.baseUri;
Public ReadOnly Property BaseUri As Uri
プロパティ値
XAML 読み込み時のオブジェクトの基本の Uniform Resource Identifier (URI)。
例
この例では、イメージ ソースをバックアップ/既定値にリセットするイベント ハンドラーで BaseUri を使用します。 BaseUri は、 BitmapImage コンストラクター呼び出しに使用される新しい Uniform Resource Identifier (URI) の "パス" 部分に使用されます。残りの Uniform Resource Identifier (URI) は、アプリのリソースに含まれるイメージ ファイルを指します。 このコードをコンテキストで確認するには、 CameraCaptureUI サンプルを参照してください。
void SDKSample::Page::Reset_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e)
{
rootPage->NotifyUser("The photo will be shown here.", NotifyType::StatusMessage);
ResetButton->Visibility = Windows::UI::Xaml::Visibility::Collapsed;
CapturedPhoto->Source = ref new BitmapImage(ref new Windows::Foundation::Uri(BaseUri->AbsoluteUri, "Assets/placeholder-sdk.png"));
// Remove file from Application Data
appSettings->Remove("capturedPhoto");
}
private void Reset_Click(object sender, RoutedEventArgs e)
{
ResetButton.Visibility = Visibility.Collapsed;
CapturedPhoto.Source = new BitmapImage(new Uri(this.BaseUri, "Assets/placeholder-sdk.png"));
// Clear file path in Application Data
appSettings.Remove(photoKey);
}
Private Sub Reset_Click(sender As Object, e As RoutedEventArgs)
ResetButton.Visibility = Visibility.Collapsed
CapturedPhoto.Source = New BitmapImage(New Uri(Me.BaseUri, "Assets/placeholder-sdk.png"))
' Clear file path in Application Data
appSettings.Remove(photoKey)
End Sub
注釈
XAML パーサーは、ページ内のオブジェクトのコンテキストに基づいてリソースへの参照を評価できるため、Uniform Resource Identifier (URI) プロパティの部分パスと思われるものを評価できます。 ランタイム コードの場合、Uniform Resource Identifier (URI) 型の定義規則では、部分パスは許可されません。 実行時に、XAML ページを解析して作成されたオブジェクトのスコープから BaseUri を使用して、Uniform Resource Identifier (URI) の "パス" 部分を取得し、特定のリソース参照で Uniform Resource Identifier (URI) を完了できます。
以前のバージョンの注意事項
Windows 8 Windows 8では、BaseUri によってスタイルまたはテンプレート パーツから返される URI は、オブジェクトを作成した XAML ファイルに固有の値ではなく、プロジェクトの既定値を表す値を返す可能性があります。 BaseUri の動作は、Windows 8.1 以降で修正されました。 ただし、BaseUri の以前の動作に依存し、その理由で XAML コンポジションまたはリソース参照を変更した場合は、BaseUri 呼び出しを行うコードの領域を調べることをお勧めします。 アプリがWindows 8.1用に再コンパイルされるときに、リソースまたはローカライズ情報の検索に使用する組み合わせの Uniform Resource Identifier (URI) が期待どおりに動作することを確認します。 Windows 8 用にコンパイルしたアプリは、Windows 8.1 上で実行しても Windows 8 のときと同じ動作になります。