Добавить новый файл 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. Если вы хотите, чтобы реагировать, когда загрузка будет завершена, вы можете подключить другой обработчик событий JavaScript с использованием onsourcedownloadcomplete параметра:
<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>
Я надеюсь, что это поможет.
Мне действительно удалось использовать http://msdn.microsoft.com/en-us/library/cc838130(v=vs.95).aspx для отображения изображения иногда, но кажется, что к тому моменту, когда поддельный загрузочный экран загружен, так что у меня есть апплет. Так можно ли вообще избежать белого экрана? – dlanod