ScriptReference Osztály
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Regisztrál egy ECMAScript-fájlt (JavaScript) egy ASP.NET weblapon való használatra.
public ref class ScriptReference : System::Web::UI::ScriptReferenceBase
public class ScriptReference : System.Web.UI.ScriptReferenceBase
type ScriptReference = class
inherit ScriptReferenceBase
Public Class ScriptReference
Inherits ScriptReferenceBase
- Öröklődés
Példák
Az alábbi példa bemutatja, hogyan hivatkozhat egy egyéni vezérlőre és egy JavaScript-fájlra, amely a vezérlőszerelvénybe van ágyazva. A rendszer feltételezi, hogy a szerelvény a webhely Bin mappájában található. Az egyéni vezérlő animálja a vezérlőket UpdatePanel . A JavaScript-fájl SampleControl.UpdatePanelAnimation.jsnevű beágyazott erőforrásként van lefordítva. A beágyazott JavaScript-fájlt a tulajdonságok és Assembly a Name tulajdonságok használatával regisztrálhatja.
A példa használatához fordítsa le a példában látható JavaScript-fájlt beágyazott erőforrásként az egyéni vezérlővel. Helyezze az eredményül kapott szerelvényt a webhely Bin mappájába. Egy JavaScript-fájl szerelvénybe való beágyazására vonatkozó példa : Útmutató: JavaScript-fájl beágyazása erőforrásként egy szerelvénybe.
Az alábbi példa egy egyéni vezérlőt használó oldalt mutat be.
<%@ Page Language="C#" %>
<%@ Register TagPrefix="Samples" Namespace="SampleControl" Assembly="SampleControl" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>ScriptReference</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
EnablePartialRendering="True"
runat="server">
<Scripts>
<asp:ScriptReference Assembly="SampleControl" Name="SampleControl.UpdatePanelAnimation.js" />
</Scripts>
</asp:ScriptManager>
<Samples:UpdatePanelAnimationWithClientResource
ID="UpdatePanelAnimator1"
BorderColor="Green"
Animate="true"
UpdatePanelID="UpdatePanel1"
runat="server" >
</Samples:UpdatePanelAnimationWithClientResource>
<asp:UpdatePanel ID="UpdatePanel1"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:Calendar ID="Calendar2"
runat="server">
</asp:Calendar>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="true" %>
<%@ Register TagPrefix="Samples" Namespace="SampleControl" Assembly="SampleControl" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>ScriptReference</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1"
EnablePartialRendering="True"
runat="server">
<Scripts>
<asp:ScriptReference Assembly="SampleControl" Name="SampleControl.UpdatePanelAnimation.js" />
</Scripts>
</asp:ScriptManager>
<Samples:UpdatePanelAnimationWithClientResource
ID="UpdatePanelAnimator1"
BorderColor="Green"
Animate="true"
UpdatePanelID="UpdatePanel1"
runat="server" >
</Samples:UpdatePanelAnimationWithClientResource>
<asp:UpdatePanel ID="UpdatePanel1"
UpdateMode="Conditional"
runat="server">
<ContentTemplate>
<asp:Calendar ID="Calendar2"
runat="server">
</asp:Calendar>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>
Az alábbi példa az egyéni vezérlőosztály definícióját mutatja be.
using System;
using System.Drawing;
using System.Web.UI;
using System.Web;
using System.Globalization;
namespace SampleControl
{
public class UpdatePanelAnimationWithClientResource : Control
{
private string _updatePanelID;
private Color _borderColor;
private Boolean _animate;
public Color BorderColor
{
get
{
return _borderColor;
}
set
{
_borderColor = value;
}
}
public string UpdatePanelID
{
get
{
return _updatePanelID;
}
set
{
_updatePanelID = value;
}
}
public Boolean Animate
{
get
{
return _animate;
}
set
{
_animate = value;
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
if (Animate)
{
UpdatePanel updatePanel = (UpdatePanel)FindControl(UpdatePanelID);
string script = String.Format(
CultureInfo.InvariantCulture,
@"
Sys.Application.add_load(function(sender, args) {{
var {0}_borderAnimation = new BorderAnimation('{1}');
var panelElement = document.getElementById('{0}');
if (args.get_isPartialLoad()) {{
{0}_borderAnimation.animate(panelElement);
}}
}})
",
updatePanel.ClientID,
ColorTranslator.ToHtml(BorderColor));
ScriptManager.RegisterStartupScript(
this,
typeof(UpdatePanelAnimationWithClientResource),
ClientID,
script,
true);
}
}
}
}
Imports System.Web.UI
Imports System.Drawing
Imports System.Globalization
Public Class UpdatePanelAnimationWithClientResource
Inherits Control
Private _updatePanelID As String
Private _borderColor As Color
Private _animate As Boolean
Public Property BorderColor() As Color
Get
Return _borderColor
End Get
Set(ByVal value As Color)
_borderColor = value
End Set
End Property
Public Property UpdatePanelID() As String
Get
Return _updatePanelID
End Get
Set(ByVal value As String)
_updatePanelID = value
End Set
End Property
Public Property Animate() As Boolean
Get
Return _animate
End Get
Set(ByVal value As Boolean)
_animate = value
End Set
End Property
Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
MyBase.OnPreRender(e)
If (Animate) Then
Dim updatePanel As UpdatePanel = CType(Me.FindControl(UpdatePanelID), UpdatePanel)
Dim script As String = String.Format( _
CultureInfo.InvariantCulture, _
"Sys.Application.add_load(function(sender, args) {{var {0}_borderAnimation = new BorderAnimation('{1}');var panelElement = document.getElementById('{0}');if (args.get_isPartialLoad()) {{{0}_borderAnimation.animate(panelElement);}}}});", _
updatePanel.ClientID, _
ColorTranslator.ToHtml(BorderColor))
ScriptManager.RegisterStartupScript( _
Me, _
GetType(UpdatePanelAnimationWithClientResource), _
ClientID, _
script, _
True)
End If
End Sub
End Class
Az alábbi példa a támogatott JavaScript-fájlt mutatja be.
BorderAnimation = function(color) {
this._color = color;
}
BorderAnimation.prototype = {
animate: function(panelElement) {
var s = panelElement.style;
s.borderWidth = '2px';
s.borderColor = this._color;
s.borderStyle = 'solid';
window.setTimeout(
function() {{
s.borderWidth = 0;
}},
500);
}
}
Az alábbi példa az egyéni vezérlőt és a JavaScript-fájlt tartalmazó projekt AssemblyInfo-fájljába felvenni kívánt kódot mutatja be.
[assembly: System.Web.UI.WebResource("SampleControl.UpdatePanelAnimation.js", "application/x-javascript")]
<Assembly: System.Web.UI.WebResource("SampleControl.UpdatePanelAnimation.js", "application/x-javascript")>
Megjegyzések
Egy JavaScript-fájlt egy ASP.NET-weblapra is felvehet, ha regisztrálja egy ScriptReference objektumon keresztül. Regisztrálhat egy .js fájlként (statikus szkriptfájlként) található szkriptfájlt a webhelyen. Regisztrálhat egy olyan szkriptfájlt is, amely erőforrásként van beágyazva egy szerelvénybe. A szkriptfájl regisztrálása után a függvényeit a weblap ügyfélszkriptjében használhatja.
Statikus szkriptfájl regisztrálásához állítsa az PathScriptReference objektum tulajdonságát a fájl relatív helyére.
Ha erőforrásként beágyazott szkriptfájlt szeretne regisztrálni egy szerelvényben, állítsa a Assembly tulajdonságot a fájlt tartalmazó szerelvény nevére. Ezután állítsa a Name tulajdonságot a szerelvénybe beágyazott .js fájl nevére. Ebben az esetben a szkriptfájlnak beágyazottnak kell lennie, nem csatoltnak.
A tulajdonság beállításával ScriptMode jelezheti, hogy a szkript hibakeresési vagy kiadási verzióját szeretné-e használni.
Az Auto érték különböző eredményeket eredményez attól függően, hogy önálló szkriptfájlra vagy egy szerelvény erőforrásaként beágyazott szkriptfájlra hivatkozik. A tulajdonsággal Path önálló szkriptfájl van definiálva. A szerelvényhivatkozást a Name tulajdonságokon Assembly keresztül kell elérni. Az érték eredménye a Auto következő:
Ha egy különálló szkriptfájlra alkalmazza, ahol a Path tulajdonság meg van adva, az Auto érték egyenértékű a következővel Release: .
Ha egy szerelvény szkripthivatkozására alkalmazza, Auto az egyenértékű a következővel Inherit: . Ha csak Name meg van adva, a szkriptre való hivatkozásra szolgál. Amikor Name és a Path tulajdonság is meg van adva, a tulajdonságot használja a Path rendszerName, de az Auto érték továbbra is egyenértékű.Inherit
Konstruktorok
| Name | Description |
|---|---|
| ScriptReference() |
Inicializálja a ScriptReference osztály új példányát. |
| ScriptReference(String, String) |
Inicializálja az ScriptReference osztály új példányát egy megadott név és szerelvény használatával. |
| ScriptReference(String) |
Inicializálja az ScriptReference osztály új példányát egy megadott elérési út használatával. |
Tulajdonságok
| Name | Description |
|---|---|
| Assembly |
Lekéri vagy beállítja annak a szerelvénynek a nevét, amely beágyazott erőforrásként tartalmazza az ügyfélszkriptfájlt. |
| IgnoreScriptPath |
Elavult.
Lekéri vagy beállít egy értéket, amely jelzi, hogy a ScriptPath tulajdonság szerepel-e az URL-címben, amikor ügyfélszkriptfájlt regisztrál egy erőforrásból. |
| Name |
Lekéri vagy beállítja az ügyfélszkriptfájlt tartalmazó beágyazott erőforrás nevét. |
| NotifyScriptLoaded |
Elavult.
Lekéri vagy beállít egy értéket, amely jelzi, hogy az ScriptResourceHandler objektum automatikusan hozzáadja-e a kódot az ECMAScript -fájl végén a NotifyScriptLoaded osztály ügyfélmetódusának meghívásához. (Öröklődés forrása ScriptReferenceBase) |
| Path |
Lekéri vagy beállítja a hivatkozott ügyfélszkriptfájl elérési útját a weblaphoz képest. (Öröklődés forrása ScriptReferenceBase) |
| ResourceUICultures |
Lekéri vagy beállítja a tulajdonság által Path támogatott felhasználói felületi kultúrák vesszővel tagolt listáját. (Öröklődés forrása ScriptReferenceBase) |
| ScriptMode |
Lekéri vagy beállítja a használni kívánt ügyfélszkriptfájl (kiadás vagy hibakeresés) verzióját. (Öröklődés forrása ScriptReferenceBase) |
Metódusok
| Name | Description |
|---|---|
| Equals(Object) |
Meghatározza, hogy a megadott objektum egyenlő-e az aktuális objektummal. (Öröklődés forrása Object) |
| GetHashCode() |
Ez az alapértelmezett kivonatoló függvény. (Öröklődés forrása Object) |
| GetType() |
Lekéri az Type aktuális példányt. (Öröklődés forrása Object) |
| GetUrl(ScriptManager, Boolean) |
Lekéri az elem attribútumának |
| IsAjaxFrameworkScript(ScriptManager) |
Meghatározza, hogy a szkripthivatkozás AJAX-szkript-e. |
| IsFromSystemWebExtensions() |
Elavult.
Azt jelzi, hogy az összetett szkript tartalmaz-e egy ASP.NET AJAX-keretrendszerszkriptre mutató hivatkozást. |
| MemberwiseClone() |
Az aktuális Objectpéldány sekély másolatát hozza létre. (Öröklődés forrása Object) |
| ToString() |
Olyan sztringet ad vissza, amely a Name tulajdonság, a Path tulajdonság vagy a típusnév értékét jelöli. |