In Silverlight 3 ist es nun möglich Browser-Anwendungen auch außerhalb des Browsers zu starten. Dazu sind nur ganz wenige Schritte notwendig.

Schritt 1: Aktivieren der Out-of-Browser-Funktionalität im Manifest (AppManifest.xml)

<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Deployment.Parts>
    </Deployment.Parts>
 
    <Deployment.ApplicationIdentity>
        <ApplicationIdentity 
            ShortName="Olivers Silverlight 3 Demos" 
            Title="Olivers Silverlight 3 Demos">
            <ApplicationIdentity.Blurb>Silverlight 3 Demos</ApplicationIdentity.Blurb>
        </ApplicationIdentity>
    </Deployment.ApplicationIdentity>
    
</Deployment>

Schritt 2 a: Installieren via Code

void _demo1Button_Click(object sender, System.Windows.RoutedEventArgs e)
{
    Application.Current.Detach();
}

Wichtige Vorbedingung: Es ist nicht möglich die Anwendung automatisch zu installieren Es ist nur möglich in einem Event, das von einem Benutzer ausgeführt wurde diesen Code einzufügen.

Schritt 2 b: Installieren via Kontext-Menü

image

Deinstallieren via Kontext-Menü …

image

Überprüfen ob man sich derzeit im Out-Of-Browser-Modus befindet geht ebenfalls sehr einfach.

Application.Current.ExecutionState

Gibt diese Methode den Wert True zurück, so bedeutet dies das die Anwendung nicht im Browser gestartet wurde, sondern vom sogenannten “Detach Mode”.

Application.Current.RunningOffline

Gibt dieser Wert "True” zurück, dann existiert derzeit keine Internetverbindung.