Silverlight 4 - WebBrowserBrush

WebBrowserBrush patří do jmenného prostoru System.Windows.Controls.

Podobně jako u jiných druhů štětců můžeme WebBrowserBrush aplikovat jako výplň primitiv(čtverec, elipsa), jako pozadí prvku Canvas apod.

Postup užití WebBrowserBrush je následující:

  1. Vytvořit komponentu WebBrowser s nastaveným zdrojem(Source) a jménem(Name)
  2. Aplikovat WebBrowserBrush na objekt, který má obsah webové stránky zobrazit
  3. V rámci štětce nastavit jméno zdroje(SourceName) na danou WebBrowser komponentu

Pokud se změní obsah komponenty WebBrowser a tuto změnu chceme zobrazit v rámci štětce, pak je nutné zavolat metodu Redraw.

Omezení

WebBrowserBrush je aplikován pouze v případě běhu aplikace mimo prohlížeč(Out Of the Browser). To vychází z chování komponenty WebBrowser, která umožňuje renderovat obsah webové stránky pouze v OOB.

Zobrazená HTML stránka je neinteraktivní.

Je nutné mít komponentu WebBrowser.

Ukázka

Následující ukázka bude velice primitivní, jelikož si zatím nedokážu představit nějaké rozumnější využití tohoto druhu štětce. Tedy pro úplnost ukážu, jak zobrazit obsah webové stránky uvnitř elipsy.

Nejdříve je nutné si nadefinovat komponentu WebBrowser:

<WebBrowser Name="webbrowser" Source="http://www.aglight.cz" Width="400" Height="400" Visibility="Collapsed" /> 

Nastavili jsme viditelnost prvku na Collapsed. Nechceme mít komponentu WebBrowser zobrazenou v aplikaci.

Nyní vytvoříme objekt elipsy, který bude vyplněn obsahem komponenty WebBrowser:

<Ellipse Height="500" Width="500">
    <Ellipse.Fill>
           <WebBrowserBrush SourceName="webbrowser" x:Name="webbrush"/>
    </Ellipse.Fill>
</Ellipse>

Obsah WebBrowserBrush se nastavuje přes vlastnost SourceName.

Dále je nutné zavolat metodu Redraw, aby se obsah komponenty WebBrowser reflektoval do naší elipsy. To můžeme učinit například při pohybu myši v rámci manažeru rozvržení(Layout Manager).

private void LayoutRoot_MouseMove(object sender, MouseEventArgs e)
{
webbrush.Redraw();
}

Webová stránka je zobrazena pouze v režimu mimo prohlížeč.

Výsledná aplikace:

WebBrowserBrush

Shrnutí

  • Štětec, který se stará o zobrazení obsahu webové stránky, se nazývá WebBrowserBrush
  • Je nutné mít komponentu WebBrowser, která slouží jako zdroj pro štětec
  • Metoda Redraw pro aktualizaci WebBrowserBrush
  • Pouze v režimu OOB
  • Zobrazená HTML stránka není interaktivní
Ohodnoťte článek: starstarstarstarstar

Komentáře

Přidat komentář

jméno

text komentáře

opište text z obrázku


O autorovi

David Beinhauer

David Beinhauer

Působí jako Microsoft Student Partner a pracuje jako vývojář v jedné nadnárodní firmě. Zajímá se o webové technologie a počítačovou grafiku. Pozornost také věnuje hernímu průmyslu

web: www.aglight.cz

©2010 | David Beinhauer | Lukáš Kubis