ScriptReference Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
ASP.NET Web sayfasında kullanılmak üzere bir ECMAScript (JavaScript) dosyası kaydeder.
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
- Devralma
Örnekler
Aşağıdaki örnek, özel denetime ve denetim derlemesine eklenmiş bir JavaScript dosyasına nasıl başvurduğunu gösterir. Derlemenin Web sitesinin Bin klasöründe olduğu varsayılır. Özel denetim, denetimlere animasyon ekler UpdatePanel . JavaScript dosyası, SampleControl.UpdatePanelAnimation.js adlı ekli bir kaynak olarak derlenmiş. Ekli JavaScript dosyasını ve Name özelliklerini kullanarak Assembly kaydedersiniz.
Bu örneği kullanmak için örnekte özel denetime sahip ekli kaynak olarak gösterilen JavaScript dosyasını derleyin. Elde edilen derlemeyi Web sitesinin Bin klasörüne yerleştirin. Derlemeye JavaScript dosyası ekleme örneği için bkz. İzlenecek yol: JavaScript Dosyasını Derlemeye Kaynak Olarak Ekleme.
Aşağıdaki örnekte özel denetimi kullanan bir sayfa gösterilmektedir.
<%@ 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>
Aşağıdaki örnekte özel denetim sınıfı tanımı gösterilmektedir.
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
Aşağıdaki örnekte desteklenen JavaScript dosyası gösterilmektedir.
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);
}
}
Aşağıdaki örnekte, özel denetimi ve JavaScript dosyasını içeren projenin AssemblyInfo dosyasına eklemeniz gereken kod gösterilmektedir.
[assembly: System.Web.UI.WebResource("SampleControl.UpdatePanelAnimation.js", "application/x-javascript")]
<Assembly: System.Web.UI.WebResource("SampleControl.UpdatePanelAnimation.js", "application/x-javascript")>
Açıklamalar
JavaScript dosyasını bir ASP.NET Web sayfasına bir ScriptReference nesne aracılığıyla kaydederek ekleyebilirsiniz. Web sitesinde .js dosyası (statik betik dosyası) olarak bulunan bir betik dosyasını kaydedebilirsiniz. Ayrıca, bir derlemeye kaynak olarak eklenmiş bir betik dosyasını da kaydedebilirsiniz. Betik dosyasını kaydettikten sonra, işlevlerini Web sayfasındaki istemci betiğinde kullanabilirsiniz.
Statik betik dosyasını kaydetmek için nesnesinin ScriptReference özelliğini dosyanın göreli konumuna ayarlayınPath.
Bir derlemeye kaynak olarak eklenmiş bir betik dosyasını kaydetmek için, özelliğini dosyayı içeren derlemenin adına ayarlayın Assembly . Ardından özelliğini derlemeye eklenmiş .js dosyasının adına ayarlayın Name . Bu durumda, betik dosyası bağlı değil eklenmelidir.
özelliğini, betiğin ScriptMode hata ayıklama veya yayın sürümünün kullanılıp kullanılmayacağını gösterecek şekilde ayarlarsınız.
Değer, Auto tek başına bir betik dosyasına mı yoksa bir derlemeye kaynak olarak eklenmiş bir betik dosyasına mı başvurduğuna bağlı olarak farklı sonuçlar üretir. Özelliğiyle Path tek başına bir betik dosyası tanımlanır. Ve özellikleri aracılığıyla bir derleme başvurusuna Name Assembly erişilmelidir. Değerin Auto sonuçları aşağıdaki gibidir:
Özelliğin belirtildiği tek başına bir betik dosyasına uygulandığında Path Auto , değeri ile Releaseeşdeğerdir.
Bir derlemedeki bir betik başvurusuna uygulandığında, Auto ile Inheriteşdeğerdir. Yalnızca Name belirtildiğinde, betiği başvurmak için kullanılır. ve Name Path özelliği her ikisi de belirtildiğinde Path , yerine özelliği kullanılır Name, ancak Auto değer yine de ile Inheriteşdeğerdir.
Oluşturucular
ScriptReference() |
ScriptReference sınıfının yeni bir örneğini başlatır. |
ScriptReference(String) |
Belirtilen yolu kullanarak sınıfının yeni bir örneğini ScriptReference başlatır. |
ScriptReference(String, String) |
Belirtilen adı ve derlemeyi kullanarak sınıfın ScriptReference yeni bir örneğini başlatır. |
Özellikler
Assembly |
İstemci betik dosyasını içeren derlemenin adını ekli kaynak olarak alır veya ayarlar. |
IgnoreScriptPath |
Kullanımdan kalktı.
Bir kaynaktan istemci betik dosyasını kaydettiğinizde özelliğin ScriptPath URL'ye eklenip eklenmediğini belirten bir değer alır veya ayarlar. |
Name |
İstemci betik dosyasını içeren eklenmiş kaynağın adını alır veya ayarlar. |
NotifyScriptLoaded |
Kullanımdan kalktı.
ScriptResourceHandlerNesnenin, NotifyScriptLoaded sys. Application sınıfının Istemci yöntemini çağırmak için ECMAScript (JavaScript) dosyasının sonuna otomatik olarak kod ekleyip eklemediğini gösteren bir değer alır veya ayarlar. (Devralındığı yer: ScriptReferenceBase) |
Path |
Web sayfasına göre başvurulan istemci komut dosyasının yolunu alır veya ayarlar. (Devralındığı yer: ScriptReferenceBase) |
ResourceUICultures |
Özelliği tarafından desteklenen UI kültürlerin virgülle ayrılmış bir listesini alır veya ayarlar Path . (Devralındığı yer: ScriptReferenceBase) |
ScriptMode |
Kullanılacak istemci betik dosyasının (yayın veya hata ayıklama) sürümünü alır veya ayarlar. (Devralındığı yer: ScriptReferenceBase) |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
GetUrl(ScriptManager, Boolean) |
öğesinin özniteliğinin |
IsAjaxFrameworkScript(ScriptManager) |
Betik başvurusunun bir AJAX betiği olup olmadığını belirler. |
IsAjaxFrameworkScript(ScriptManager) |
belirtilen komut dosyası başvurusunun ASP.NET AJAX betiği olup olmadığını belirler. (Devralındığı yer: ScriptReferenceBase) |
IsFromSystemWebExtensions() |
Kullanımdan kalktı.
Bileşik betiğin ASP.NET AJAX çerçeve betiğine başvuru içerip içermediğini gösterir. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Özelliğin, Path özelliğin Name veya tür adının değerini temsil eden bir dize döndürür. |