我試圖避免在我的小應用程序之前顯示默認的Silverlight加載屏幕,並試圖顯示一個空白的彩色背景,與我的小應用程序的顏色相同。其目的是避免令人不安的白色,並使其看起來像它是一個應用程序繪圖的一部分。如何更改Silverlight加載屏幕的背景?
我發現了SplashScreenSource,但我不確定如何掛鉤以顯示單一顏色背景而不是加載屏幕。有什麼建議麼?
我試圖避免在我的小應用程序之前顯示默認的Silverlight加載屏幕,並試圖顯示一個空白的彩色背景,與我的小應用程序的顏色相同。其目的是避免令人不安的白色,並使其看起來像它是一個應用程序繪圖的一部分。如何更改Silverlight加載屏幕的背景?
我發現了SplashScreenSource,但我不確定如何掛鉤以顯示單一顏色背景而不是加載屏幕。有什麼建議麼?
將新的XAML文件添加到ASP.NET網站,其中將顯示Silverlight。
替換XAML的內容與本:
<Grid xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<StackPanel VerticalAlignment="Center">
<Grid>
<Rectangle x:Name="progressBarBackground" Fill="White" Stroke="Black"
StrokeThickness="1" Height="30" Width="200"></Rectangle>
<Rectangle x:Name="progressBar" Fill="Yellow" Height="28" Width="0">
</Rectangle>
</Grid>
<TextBlock x:Name="progressText" HorizontalAlignment="Center"
Text="0% downloaded ..."></TextBlock>
</StackPanel>
</Grid>
接下來,你需要一個JavaScript函數添加到您的HTML登錄頁面或ASP.NET。
<script type="text/javascript">
function onSourceDownloadProgressChanged(sender, eventArgs)
{
sender.findName("progressText").Text =
Math.round((eventArgs.progress * 100)) + "% downloaded ...";
sender.findName("progressBar").Width =
eventArgs.progress * sender.findName("progressBarBackground").Width;
}
</script>
要使用此啓動畫面,您需要將splashscreensource參數添加到 識別您的XAML閃屏和 的onsourcedownloadprogresschanged參數掛鉤你的JavaScript事件處理程序。如果您想在下載完成後反應,你 可以使用onsourcedownloadcomplete 參數掛鉤不同的JavaScript事件處理程序:
<object data="data:application/x-silverlight," type="application/x-silverlight-2"
width="100%" height="100%">
<param name="source" value="ClientBin/SplashScreen.xap"/>
<param name="onerror" value="onSilverlightError" />
<param name="background" value="white" />
<param name="splashscreensource" value="SplashScreen.xaml" />
<param name="onsourcedownloadprogresschanged"
value="onSourceDownloadProgressChanged" />
...
</object>
我希望這會幫助你。
我沒有使用ASP.NET網站,但是XAML可以存在於單獨的文件中並且具有相同的效果? – dlanod 2010-10-05 05:34:21
我認爲是的,它必須在單獨的文件中,而其他部分必須放置在Silverlight應用程序所在的頁面(可能是html文件或其他文件) – 2010-10-05 06:36:06
我實際上設法使用http://msdn.microsoft.com/en-us/library/cc838130(v=vs.95).aspx有時顯示圖像,但似乎到時候假加載屏幕已加載,所以我的小程序。那麼有什麼辦法可以完全避免白屏? – dlanod 2010-10-01 04:09:44