ここでは、Silverlight 4 OOB インストール パターンに Tim Heuer が概説しているパターンを使用しています。
http://timheuer.com/blog/archive/2009/08/12/silverlight-out-of-browser-force-install-pattern.aspx
これが私のアプリの *Application_Startup* メソッドです:
private void Application_Startup(object sender, StartupEventArgs e)
{
//string _USERID = e.InitParams["UserAccount"];
if ((App.Current.InstallState == InstallState.Installed) && (!App.Current.IsRunningOutOfBrowser))
{
this.RootVisual = new Installed();
}
else if (!App.Current.IsRunningOutOfBrowser)
{
this.RootVisual = new Installer();
}
else
{
this.RootVisual = new MainPage();
}
ShowBusy(false);
}
問題は、アプリがインストールされて実行されている場合でも、App.Current.InstallState が NotInstalled を返し、App.Current.IsRunningOutOfBrowser が falseであることです。そのため、Installed コントロールは表示されず、常に Installer コントロールが表示されます。
これは、開発環境とデプロイ環境の両方に当てはまります。
私はこれに困惑しています、誰か考えがありますか?