Sdílet prostřednictvím


Změna vlastností ovládacího prvku DropShadow klientským kódem (VB)

Christian Wenz

Stáhnout PDF

Ovládací prvek DropShadow v sadě nástrojů AJAX Control Toolkit rozšiřuje panel s stínem. Vlastnosti tohoto extenderu lze také změnit pomocí klientského javascriptového kódu.

Přehled

Ovládací prvek DropShadow v sadě nástrojů AJAX Control Toolkit rozšiřuje panel s stínem. Vlastnosti tohoto extenderu lze také změnit pomocí klientského javascriptového kódu.

Postup

Kód začíná panelem obsahujícím několik řádků textu:

<asp:Panel ID="panelShadow" runat="server" CssClass="panel" Width="300px">
 ASP.NET AJAX is a free framework for quickly creating a new generation of more 
 efficient, more interactive and highly-personalized Web experiences that work 
 across all the most popular browsers.<br />
 ASP.NET AJAX is a free framework for quickly creating a new generation of more 
 efficient, more interactive and highly-personalized Web experiences that work 
 across all the most popular browsers.<br />
 ASP.NET AJAX is a free framework for quickly creating a new generation of more 
 efficient, more interactive and highly-personalized Web experiences that work 
 across all the most popular browsers.<br />
</asp:Panel>

Přidružená třída CSS dává panelu pěknou barvu pozadí:

<style type="text/css">
 .panel {background-color: navy;}
</style>

Přidá DropShadowExtender se k rozšíření panelu o efekt stínu, krytí nastavené na 50 %:

<ajaxToolkit:DropShadowExtender ID="dse1" runat="server"
 TargetControlID="panelShadow"
 Opacity="0.5" Rounded="true" />

Ovládací prvek ASP.NET AJAX ScriptManager pak umožní, aby sada nástrojů Control Toolkit fungovala:

<asp:ScriptManager ID="asm" runat="server" />

Další panel obsahuje dva javascriptové odkazy pro nastavení neprůhlednosti stínu: odkaz mínus snižuje neprůhlednost stínu, odkaz plus ho zvyšuje.

<asp:Panel ID="panelControl" runat="server">
 <br />
 <label id="txtOpacity" runat="server">0.5</label>
 <a href="#" onclick="changeOpacity(-0.1); return false;">-</a>
 <a href="#" onclick="changeOpacity(+0.1); return false;">+</a>
</asp:Panel>

Funkce changeOpacity() JavaScriptu pak musí nejprve najít DropShadowExtender ovládací prvek na stránce. ASP.NET AJAX definuje metodu $find() přesně pro tento úkol. get_Opacity() Pak metoda načte aktuální neprůhlednost, set_Opacity() metoda ji nastaví. Kód JavaScriptu pak vloží aktuální hodnotu neprůhlednosti do elementu <label> :

<script type="text/javascript">
 function changeOpacity(delta) 
 {
 var dse = $find("dse1");
 var o = dse.get_Opacity();
 o += delta;
 o = Math.round(10 * o) / 10;
 if (o <= 1.0 && o >= 0.0) 
 {
 dse.set_Opacity(o);
 $get("txtOpacity").firstChild.nodeValue = o;
 }
 }
</script>

Na straně klienta se změní neprůhlednost.

Neprůhlednost se změní na straně klienta (kliknutím zobrazíte obrázek v plné velikosti).