Silverlight / 03.03.2011

Coproject – demo RIA aplikace krok za krokem, díl 10,5

A
Augustin Šulc
Autor článku
2 min
Čas čtení

Jestli jste sledovali využití procesoru CoProjectem, nejspíše jste si všimli obrovského nárůstu zatížení v modulu To do po prvním načtení dat.

Jde o docela běžný problém, který se obvykle vyskytuje při použití prvků BusyIndicator nebo ProgressBar. Při hledání řešení jsem narazil například na tyto příspěvky: Silverlight forum, Silverlight toolkit issue, Appsolo blog. Po dalším hledání jsem narazil pouze na toto fórum. Naštěstí jsem ale narazil na toto video (vřele doporučuji): Silveright TV episode 57.

Když budeme chtít znalosti z videa využít v Coprojectu, měli bychom nejprve upravit App.xaml.cs:

private void Application_Startup(object sender, StartupEventArgs e)
{
	Application.Current.Host.Settings.EnableRedrawRegions = true;
}

Teď spusťte aplikaci, otevřete modul To do a načtěte data ze serveru (pozor, pokud trpíte epilepsií!). Jak je vidět, máme problém.

Pojďme zkusit aplikovat řešení navrhované ve videu – upravte ShellView následovně:

<grid x:name="LayoutRoot">
	<border style="{StaticResource ContentBorderStyle}">
		<contentcontrol style="{StaticResource LogoIcon}">
	</contentcontrol></border>
	<border style="{StaticResource LeftBorderStyle}">

	<textblock style="{StaticResource ApplicationTitleStyle}" text="Coproject">
	...</textblock></border></grid>

Pak už jen upravte LeftBorderStyle v Custom.xaml:

<style basedon="{StaticResource LinksBorderStyle}" targettype="Border" type="text/css" x:key="LeftBorderStyle">
<Setter Property="Margin" Value="10,135,25,0"/></style>

Spusťte aplikaci – překreslování obrazovky teď funguje, jak má, a i zatížení procesoru je zpět na rozumné úrovni.

Komentáře (1)

Buďte první, kdo napíše komentář.
X
xaml.cz

Komunitní blog zaměřený na XAML, WPF, Silverlight a budoucnost desktopových a mobilních technologií.

© 2026 xaml.cz

Svelte 5 Tailwind CSS Bun