ClientScriptManager.GetCallbackEventReference Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событию сервера.
Перегрузки
| Имя | Описание |
|---|---|
| GetCallbackEventReference(Control, String, String, String) |
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событию сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, скрипт клиента и контекст. |
| GetCallbackEventReference(Control, String, String, String, Boolean) |
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, скрипт клиента, контекст и логическое значение. |
| GetCallbackEventReference(String, String, String, String, String, Boolean) |
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный целевой объект, аргумент, клиентский скрипт, контекст, обработчик ошибок и логическое значение. |
| GetCallbackEventReference(Control, String, String, String, String, Boolean) |
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, клиентский скрипт, контекст, обработчик ошибок и логическое значение. |
GetCallbackEventReference(Control, String, String, String)
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событию сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, скрипт клиента и контекст.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context);
public string GetCallbackEventReference(System.Web.UI.Control control, string argument, string clientCallback, string context);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String) As String
Параметры
- control
- Control
Сервер Control , обрабатывающий обратный вызов клиента. Элемент управления должен реализовать ICallbackEventHandler интерфейс и предоставить RaiseCallbackEvent(String) метод.
- argument
- String
Аргумент, переданный из клиентского скрипта на сервер
Метод RaiseCallbackEvent(String).
- clientCallback
- String
Имя обработчика событий клиента, получающего результат успешного события сервера.
- context
- String
Клиентский скрипт, который вычисляется на клиенте до начала обратного вызова. Результат скрипта передается обработчику событий клиента.
Возвращаемое значение
Имя клиентской функции, которая вызывает обратный вызов клиента.
Исключения
Указан Controlnull.
Указанный ControlICallbackEventHandler объект не реализует интерфейс.
Примеры
В следующем примере кода показано, как использовать две перегрузки метода в сценарии обратного GetCallbackEventReference вызова клиента, который увеличивает целые числа.
Показаны два механизма обратного вызова; Разница между ними — использование context параметра. Функция ReceiveServerData1 обратного вызова клиента предоставляется с помощью context параметра. В отличие от этого, ReceiveServerData2 функция обратного вызова клиента определяется в блоке <script> на странице.
RaiseCallbackEvent Метод — это обработчик сервера, который увеличивает значение, переданное ему, и GetCallbackResult метод возвращает добавочное значение в виде строки.
RaiseCallbackEvent Если метод возвращает ошибку, ProcessCallBackError вызывается клиентская функция.
<%@ Page Language="C#" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public int cbCount = 0;
// Define method that processes the callbacks on server.
public void RaiseCallbackEvent(String eventArgument)
{
cbCount = Convert.ToInt32(eventArgument) + 1;
}
// Define method that returns callback result.
public string GetCallbackResult()
{
return cbCount.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
// Define a StringBuilder to hold messages to output.
StringBuilder sb = new StringBuilder();
// Check if this is a postback.
sb.Append("No page postbacks have occurred.");
if (Page.IsPostBack)
{
sb.Append("A page postback has occurred.");
}
// Write out any messages.
MyLabel.Text = sb.ToString();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Define one of the callback script's context.
// The callback script will be defined in a script block on the page.
StringBuilder context1 = new StringBuilder();
context1.Append("function ReceiveServerData1(arg, context)");
context1.Append("{");
context1.Append("Message1.innerText = arg;");
context1.Append("value1 = arg;");
context1.Append("}");
// Define callback references.
String cbReference1 = cs.GetCallbackEventReference(this, "arg",
"ReceiveServerData1", context1.ToString());
String cbReference2 = cs.GetCallbackEventReference("'" +
Page.UniqueID + "'", "arg", "ReceiveServerData2", "",
"ProcessCallBackError", false);
String callbackScript1 = "function CallTheServer1(arg, context) {" +
cbReference1 + "; }";
String callbackScript2 = "function CallTheServer2(arg, context) {" +
cbReference2 + "; }";
// Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer1",
callbackScript1, true);
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer2",
callbackScript2, true);
}
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public cbCount As Integer = 0
' Define method that processes the callbacks on server.
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
cbCount = Convert.ToInt32(eventArgument) + 1
End Sub
' Define method that returns callback result.
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return cbCount.ToString()
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define a StringBuilder to hold messages to output.
Dim sb As New StringBuilder()
' Check if this is a postback.
sb.Append("No page postbacks have occurred.")
If (Page.IsPostBack) Then
sb.Append("A page postback has occurred.")
End If
' Write out any messages.
MyLabel.Text = sb.ToString()
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Define one of the callback script's context.
' The callback script will be defined in a script block on the page.
Dim context1 As New StringBuilder()
context1.Append("function ReceiveServerData1(arg, context)")
context1.Append("{")
context1.Append("Message1.innerText = arg;")
context1.Append("value1 = arg;")
context1.Append("}")
' Define callback references.
Dim cbReference1 As String = cs.GetCallbackEventReference(Me, "arg", _
"ReceiveServerData1", context1.ToString())
Dim cbReference2 As String = cs.GetCallbackEventReference("'" & _
Page.UniqueID & "'", "arg", "ReceiveServerData2", "", "ProcessCallBackError", False)
Dim callbackScript1 As String = "function CallTheServer1(arg, context) {" + _
cbReference1 + "; }"
Dim callbackScript2 As String = "function CallTheServer2(arg, context) {" + _
cbReference2 + "; }"
' Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer1", _
callbackScript1, True)
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer2", _
callbackScript2, True)
End Sub
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
Комментарии
Метод GetCallbackEventReference(Control, String, String, String) выполняет обратный вызов вне диапазона к серверу, который является измененной версией нормального жизненного цикла страницы. Дополнительные сведения см. в разделе "Реализация обратных вызовов клиента без обратной передачи".
Замечание
Если браузер — Microsoft Internet Explorer (версия 5.0 или более поздняя), механизм обратного вызова скрипта реализуется с помощью COM-объекта Microsoft.XmlHttp и требует, чтобы браузер был установлен для запуска элементов ActiveX. Для других браузеров используется XMLHttpRequest с помощью локальной объектной модели документа (DOM). Чтобы проверить, поддерживает ли браузер обратные вызовы клиентов, используйте SupportsCallback это свойство. Чтобы проверить, поддерживает ли браузер XML по протоколу SupportsXmlHttp HTTP, используйте это свойство. Оба свойства доступны через Browser свойство встроенного объекта ASP.NET Request .
Перегрузка GetCallbackEventReferenceGetCallbackEventReference метода выполняет обратный вызов синхронно с помощью XML по протоколу HTTP. При отправке данных синхронно в сценарии обратного вызова синхронные обратные вызовы возвращаются немедленно и не блокируют браузер. Обратный вызов двух синхронных обратных вызовов не может выполняться одновременно в браузере. Если второй синхронный обратный вызов запускается в то время как один в настоящее время ожидается, второй синхронный обратный вызов отменяет первый и только второй обратный вызов возвращается.
Чтобы асинхронно отправлять данные, используйте одну из перегрузк, принимающую useAsync параметр, которая является логическим значением, контролируемым этим поведением. В асинхронном сценарии можно использовать несколько ожидающих обратных вызовов; однако порядок, в котором они возвращаются, не гарантируется в соответствии с порядком, в котором они были инициированы.
Кроме того, эта перегрузка GetCallbackEventReference метода не указывает, что клиентская функция не обрабатывает случай условия ошибки, созданного RaiseCallbackEvent методом. Чтобы указать обработчик обратного вызова ошибки клиента, используйте одну из перегрузок, принимающую clientErrorCallback параметр.
Метод GetCallbackEventReference(Control, String, String, String) принимает необязательный строковый argument параметр и возвращает строку. Чтобы передать или получить несколько значений, сцепление значений в входной или возвращаемой строке соответственно.
Замечание
Избегайте использования состояния представления в реализации свойств страницы или элемента управления, которые необходимо обновить во время операций обратного вызова скрипта. Если свойства предназначены для выживания запросов на страницу, можно использовать состояние сеанса.
См. также раздел
Применяется к
GetCallbackEventReference(Control, String, String, String, Boolean)
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, скрипт клиента, контекст и логическое значение.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, bool useAsync);
public string GetCallbackEventReference(System.Web.UI.Control control, string argument, string clientCallback, string context, bool useAsync);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string * bool -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String, useAsync As Boolean) As String
Параметры
- control
- Control
Сервер Control , обрабатывающий обратный вызов клиента. Элемент управления должен реализовать ICallbackEventHandler интерфейс и предоставить RaiseCallbackEvent(String) метод.
- argument
- String
Аргумент, переданный из клиентского скрипта на сервер
Метод RaiseCallbackEvent(String).
- clientCallback
- String
Имя обработчика событий клиента, получающего результат успешного события сервера.
- context
- String
Клиентский скрипт, который вычисляется на клиенте до начала обратного вызова. Результат скрипта передается обработчику событий клиента.
- useAsync
- Boolean
true для асинхронного выполнения обратного вызова; false для синхронного выполнения обратного вызова.
Возвращаемое значение
Имя клиентской функции, которая вызывает обратный вызов клиента.
Исключения
Указан Controlnull.
Указанный ControlICallbackEventHandler объект не реализует интерфейс.
Комментарии
Для этой перегрузки GetCallbackEventReference метода требуется useAsync параметр, который позволяет выполнять обратный вызов клиента асинхронно, задав значение .true Версии перегрузки этого метода, для которых не требуется useAsync параметр, задайте значение false по умолчанию.
Дополнительные сведения об этом методе см. в примечаниях к методу перегрузки GetCallbackEventReference .
См. также раздел
Применяется к
GetCallbackEventReference(String, String, String, String, String, Boolean)
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный целевой объект, аргумент, клиентский скрипт, контекст, обработчик ошибок и логическое значение.
public:
System::String ^ GetCallbackEventReference(System::String ^ target, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, System::String ^ clientErrorCallback, bool useAsync);
public string GetCallbackEventReference(string target, string argument, string clientCallback, string context, string clientErrorCallback, bool useAsync);
member this.GetCallbackEventReference : string * string * string * string * string * bool -> string
Public Function GetCallbackEventReference (target As String, argument As String, clientCallback As String, context As String, clientErrorCallback As String, useAsync As Boolean) As String
Параметры
- target
- String
Имя сервера Control , обрабатывающего обратный вызов клиента. Элемент управления должен реализовать ICallbackEventHandler интерфейс и предоставить RaiseCallbackEvent(String) метод.
- argument
- String
Аргумент, переданный из клиентского скрипта на сервер
Метод RaiseCallbackEvent(String).
- clientCallback
- String
Имя обработчика событий клиента, получающего результат успешного события сервера.
- context
- String
Клиентский скрипт, который вычисляется на клиенте до начала обратного вызова. Результат скрипта передается обработчику событий клиента.
- clientErrorCallback
- String
Имя обработчика событий клиента, получающего результат при возникновении ошибки в обработчике событий сервера.
- useAsync
- Boolean
true для асинхронного выполнения обратного вызова; false для синхронного выполнения обратного вызова.
Возвращаемое значение
Имя клиентской функции, которая вызывает обратный вызов клиента.
Примеры
В следующем примере кода показано, как использовать две перегрузки метода в сценарии обратного GetCallbackEventReference вызова клиента, который увеличивает целые числа.
Показаны два механизма обратного вызова; Разница между ними — использование context параметра. Функция ReceiveServerData1 обратного вызова клиента предоставляется с помощью context параметра. В отличие от этого, ReceiveServerData2 функция обратного вызова клиента определяется в блоке <script> на странице.
RaiseCallbackEvent Метод — это обработчик сервера, который увеличивает значение, переданное ему, и GetCallbackResult метод возвращает добавочное значение в виде строки.
RaiseCallbackEvent Если метод возвращает ошибку, вызывается клиентская функцияProcessCallBackError.
<%@ Page Language="C#" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
public int cbCount = 0;
// Define method that processes the callbacks on server.
public void RaiseCallbackEvent(String eventArgument)
{
cbCount = Convert.ToInt32(eventArgument) + 1;
}
// Define method that returns callback result.
public string GetCallbackResult()
{
return cbCount.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
// Define a StringBuilder to hold messages to output.
StringBuilder sb = new StringBuilder();
// Check if this is a postback.
sb.Append("No page postbacks have occurred.");
if (Page.IsPostBack)
{
sb.Append("A page postback has occurred.");
}
// Write out any messages.
MyLabel.Text = sb.ToString();
// Get a ClientScriptManager reference from the Page class.
ClientScriptManager cs = Page.ClientScript;
// Define one of the callback script's context.
// The callback script will be defined in a script block on the page.
StringBuilder context1 = new StringBuilder();
context1.Append("function ReceiveServerData1(arg, context)");
context1.Append("{");
context1.Append("Message1.innerText = arg;");
context1.Append("value1 = arg;");
context1.Append("}");
// Define callback references.
String cbReference1 = cs.GetCallbackEventReference(this, "arg",
"ReceiveServerData1", context1.ToString());
String cbReference2 = cs.GetCallbackEventReference("'" +
Page.UniqueID + "'", "arg", "ReceiveServerData2", "",
"ProcessCallBackError", false);
String callbackScript1 = "function CallTheServer1(arg, context) {" +
cbReference1 + "; }";
String callbackScript2 = "function CallTheServer2(arg, context) {" +
cbReference2 + "; }";
// Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer1",
callbackScript1, true);
cs.RegisterClientScriptBlock(this.GetType(), "CallTheServer2",
callbackScript2, true);
}
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Implements Interface="System.Web.UI.ICallbackEventHandler" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public cbCount As Integer = 0
' Define method that processes the callbacks on server.
Public Sub RaiseCallbackEvent(ByVal eventArgument As String) _
Implements System.Web.UI.ICallbackEventHandler.RaiseCallbackEvent
cbCount = Convert.ToInt32(eventArgument) + 1
End Sub
' Define method that returns callback result.
Public Function GetCallbackResult() _
As String Implements _
System.Web.UI.ICallbackEventHandler.GetCallbackResult
Return cbCount.ToString()
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
' Define a StringBuilder to hold messages to output.
Dim sb As New StringBuilder()
' Check if this is a postback.
sb.Append("No page postbacks have occurred.")
If (Page.IsPostBack) Then
sb.Append("A page postback has occurred.")
End If
' Write out any messages.
MyLabel.Text = sb.ToString()
' Get a ClientScriptManager reference from the Page class.
Dim cs As ClientScriptManager = Page.ClientScript
' Define one of the callback script's context.
' The callback script will be defined in a script block on the page.
Dim context1 As New StringBuilder()
context1.Append("function ReceiveServerData1(arg, context)")
context1.Append("{")
context1.Append("Message1.innerText = arg;")
context1.Append("value1 = arg;")
context1.Append("}")
' Define callback references.
Dim cbReference1 As String = cs.GetCallbackEventReference(Me, "arg", _
"ReceiveServerData1", context1.ToString())
Dim cbReference2 As String = cs.GetCallbackEventReference("'" & _
Page.UniqueID & "'", "arg", "ReceiveServerData2", "", "ProcessCallBackError", False)
Dim callbackScript1 As String = "function CallTheServer1(arg, context) {" + _
cbReference1 + "; }"
Dim callbackScript2 As String = "function CallTheServer2(arg, context) {" + _
cbReference2 + "; }"
' Register script blocks will perform call to the server.
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer1", _
callbackScript1, True)
cs.RegisterClientScriptBlock(Me.GetType(), "CallTheServer2", _
callbackScript2, True)
End Sub
</script>
<script type="text/javascript">
var value1 = 0;
var value2 = 0;
function ReceiveServerData2(arg, context)
{
Message2.innerText = arg;
value2 = arg;
}
function ProcessCallBackError(arg, context)
{
Message2.innerText = 'An error has occurred.';
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ClientScriptManager Example</title>
</head>
<body>
<form id="Form1"
runat="server">
<div>
Callback 1 result: <span id="Message1">0</span>
<br />
Callback 2 result: <span id="Message2">0</span>
<br /> <br />
<input type="button"
value="ClientCallBack1"
onclick="CallTheServer1(value1, alert('Increment value'))"/>
<input type="button"
value="ClientCallBack2"
onclick="CallTheServer2(value2, alert('Increment value'))"/>
<br /> <br />
<asp:Label id="MyLabel"
runat="server"></asp:Label>
</div>
</form>
</body>
</html>
Комментарии
Эта перегрузка GetCallbackEventReference метода принимает target строковый параметр вместо Control параметра. Используйте эту перегрузку, если требуется вернуться обратному вызову, отличному от строки, содержащей UniqueID элемент управления.
Кроме того, для этой перегрузки GetCallbackEventReference метода требуется useAsync и clientErrorCallback параметр. Параметр useAsync позволяет асинхронно выполнять обратный вызов клиента, задав значение true. Версии перегрузки этого метода, для которых не требуется useAsync параметр, задайте значение false по умолчанию. Параметр clientErrorCallback позволяет определить имя клиентской функции, вызываемой, если обработчик сервера, RaiseCallbackEvent метод, возвращает ошибку. Версии перегрузки этого метода, для которых параметр не требует clientErrorCallback значение NULL.
Дополнительные сведения об этом методе см. в примечаниях к методу перегрузки GetCallbackEventReference .
См. также раздел
Применяется к
GetCallbackEventReference(Control, String, String, String, String, Boolean)
Получает ссылку на клиентную функцию, которая при вызове инициирует обратный вызов клиента к событиям сервера. Клиентская функция для этого перегруженного метода включает указанный элемент управления, аргумент, клиентский скрипт, контекст, обработчик ошибок и логическое значение.
public:
System::String ^ GetCallbackEventReference(System::Web::UI::Control ^ control, System::String ^ argument, System::String ^ clientCallback, System::String ^ context, System::String ^ clientErrorCallback, bool useAsync);
public string GetCallbackEventReference(System.Web.UI.Control control, string argument, string clientCallback, string context, string clientErrorCallback, bool useAsync);
member this.GetCallbackEventReference : System.Web.UI.Control * string * string * string * string * bool -> string
Public Function GetCallbackEventReference (control As Control, argument As String, clientCallback As String, context As String, clientErrorCallback As String, useAsync As Boolean) As String
Параметры
- control
- Control
Сервер Control , обрабатывающий обратный вызов клиента. Элемент управления должен реализовать ICallbackEventHandler интерфейс и предоставить RaiseCallbackEvent(String) метод.
- argument
- String
Аргумент, передаваемый из клиентского скрипта в метод сервера RaiseCallbackEvent(String) .
- clientCallback
- String
Имя обработчика событий клиента, получающего результат успешного события сервера.
- context
- String
Клиентский скрипт, который вычисляется на клиенте до начала обратного вызова. Результат скрипта передается обработчику событий клиента.
- clientErrorCallback
- String
Имя обработчика событий клиента, получающего результат при возникновении ошибки в обработчике событий сервера.
- useAsync
- Boolean
true для асинхронного выполнения обратного вызова; false для синхронного выполнения обратного вызова.
Возвращаемое значение
Имя клиентской функции, которая вызывает обратный вызов клиента.
Исключения
Указан Controlnull.
Указанный ControlICallbackEventHandler объект не реализует интерфейс.
Комментарии
Для этой GetCallbackEventReference перегрузки метода требуется useAsync и clientErrorCallback параметр. Параметр useAsync позволяет асинхронно выполнять обратный вызов клиента, задав значение true. Версии перегрузки этого метода, для которых не требуется useAsync параметр, задайте значение false по умолчанию. Параметр clientErrorCallback позволяет определить имя клиентской функции, вызываемой, если обработчик сервера ( RaiseCallbackEvent метод) возвращает ошибку. Версии перегрузки этого метода, для которых параметр не требует clientErrorCallback значение NULL.
Дополнительные сведения об этом методе см. в примечаниях к методу перегрузки GetCallbackEventReference .