FrameworkElement.BaseUri Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un identificador uniforme de recursos (URI) que representa el identificador uniforme de recursos (URI) base para un objeto construido con XAML en tiempo de carga XAML. Esta propiedad es útil para la resolución del identificador uniforme de recursos (URI) en tiempo de ejecución.
public:
property Uri ^ BaseUri { Uri ^ get(); };
Uri BaseUri();
public System.Uri BaseUri { get; }
var uri = frameworkElement.baseUri;
Public ReadOnly Property BaseUri As Uri
Valor de propiedad
Identificador uniforme de recursos (URI) base para un objeto en tiempo de carga XAML.
Ejemplos
En este ejemplo se usa BaseUri en un controlador de eventos que restablece un origen de imagen a una copia de seguridad o valor predeterminado. BaseUri se usa para la parte "path" de un nuevo identificador uniforme de recursos (URI) que se usa para una llamada de constructor BitmapImage , el resto del identificador uniforme de recursos (URI) apunta a un archivo de imagen que la aplicación tiene en sus recursos. Para ver este código en contexto, consulte el ejemplo 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
Comentarios
El analizador XAML puede evaluar las referencias a recursos en función del contexto del objeto en una página y, por tanto, puede evaluar qué parece ser rutas de acceso parciales en una propiedad URI (Identificador uniforme de recursos). En el caso del código en tiempo de ejecución, las reglas de definición para los tipos de identificador uniforme de recursos (URI) no permiten rutas de acceso parciales. En tiempo de ejecución, puedes usar BaseUri desde el ámbito de un objeto que se creó mediante el análisis de una página XAML para obtener la parte "path" de un identificador uniforme de recursos (URI) y, a continuación, completar el identificador uniforme de recursos (URI) con una referencia de recursos determinada.
Notas de las versiones anteriores
Windows 8 En Windows 8, el URI devuelto por BaseUri a partir de elementos de estilo o plantilla podría devolver valores que representaron un valor predeterminado del proyecto en lugar de un valor específico para el archivo XAML que creó un objeto. El comportamiento de BaseUri se ha corregido a partir de Windows 8.1. Pero si confiaste en el comportamiento anterior de BaseUri y cambiaste las composiciones XAML o las búsquedas de recursos debido a ello, es posible que quieras examinar las áreas del código que realizan llamadas BaseUri. Compruebe que el identificador uniforme de recursos (URI) combinado que usa para buscar recursos o información de localización funcione según lo previsto cuando la aplicación se vuelva a compilar para Windows 8.1. Las aplicaciones compiladas para Windows 8 que se ejecuten en Windows 8.1 siguen usando el comportamiento de Windows 8.