Событие IParametersOutProvider.ParametersOutReady
Примечание. Этот API устарел.
Происходит, когда список параметров готов для отправки в веб-части потребителя от поставщика веб-частей, который реализует интерфейс IParametersOutProvider . На клиентском компьютере может возникнуть в любое время. Тем не менее оно обычно возникает при обновлении или выбранного параметра. На сервере оно должно вызываться в методеWebPart.PartCommunicationMain.
Пространство имен: Microsoft.SharePoint.WebPartPages.Communication
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
<ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartParameters instead")> _
Event ParametersOutReady As ParametersOutReadyEventHandler
'Применение
Dim instance As IParametersOutProvider
Dim handler As ParametersOutReadyEventHandler
AddHandler instance.ParametersOutReady, handler
[ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartParameters instead")]
event ParametersOutReadyEventHandler ParametersOutReady
Замечания
Обработчик события получает аргумент типа Microsoft.SharePoint.WebPartPages.Communication.ParametersOutReadyEventArgs , содержащий данные, относящиеся к этому событию. Этот класс предоставляет массив строк в свойстве ParameterValues . Каждая строка в массиве, значение параметра. Количество и порядок параметров, содержащихся в этом массиве должно соответствовать тем, что указаны в аргументе Microsoft.SharePoint.WebPartPages.Communication.ParametersOutProviderInitEventArgs метода ParametersOutProviderInit .
Всегда следует вызвать веб-частей, который реализует интерфейс IParametersOutProvider , ParametersOutReady или NoParametersOut события. Некоторые веб-части могут вести себя неправильно, если они не принимают эту информацию. Событие ParametersOutReady для отправки параметров. Событие NoParametersOut для указания того, что нет никаких изменений в параметрах.
Примеры
В следующем примере кода показан метод переопределения PartCommunicationsMain , ParametersOutReady событие. Данный пример кода является частью большего примера, приведенного для интерфейса IParametersOutProvider .
' Step #8: Override the PartCommunicationMain() method.
' The PartCommunicationMain method is called by the Web Part
' infrastructure on the client during the ASP.NET PreRender
' event to allow the part to pass its primary data to the other
' connected parts.
' It is important to always fire either the ParametersOutReady or
' the NoParametersOut event. Some parts
' may not behave properly if they are left waiting for this
' information. ParametersOutReady should be fired to send the
' parameters. NoParametersOut should be fired to indicate that
' there is no change in the parameters.
Public Overrides Sub PartCommunicationMain()
' Ensure that all of the Web Part's controls are created.
EnsureChildControls()
' Check if connected.
If _connected Then
' Need to create the ParametersOutReadyEventArgs object
' for the ParametersOutReady event.
Dim parametersOutReadyEventArgs As New ParametersOutReadyEventArgs()
If _parametersReadyButtonClicked Then 'ParametersOutReady Button was clicked
' Set the values to the values of the text boxes.
parametersOutReadyEventArgs.ParameterValues = New String(3) {}
parametersOutReadyEventArgs.ParameterValues(0) = _fontFamilyListBox.SelectedItem.Value
parametersOutReadyEventArgs.ParameterValues(1) = _fontColorListBox.SelectedItem.Value
parametersOutReadyEventArgs.ParameterValues(2) = _fontWeightListBox.SelectedItem.Value
parametersOutReadyEventArgs.ParameterValues(3) = _fontSizeListBox.SelectedItem.Value
' Fire the ParametersOutReady event.
RaiseEvent ParametersOutReady(Me, parametersOutReadyEventArgs)
_parametersReadyButtonClicked = False
'The NoParametersOut button was clicked.
ElseIf _noParametersOutButtonClicked Then
' Fire the event.
RaiseEvent NoParametersOut(Me, New EventArgs())
_noParametersOutButtonClicked = False
' The user didn't click any button.
Else
' Fire the event.
RaiseEvent NoParametersOut(Me, New EventArgs())
_noParametersOutButtonClicked = False
End If
End If
End Sub
// Step #8: Override the PartCommunicationMain() method.
// The PartCommunicationMain method is called by the Web Part
// infrastructure on the client during the ASP.NET PreRender
// event to allow the part to pass its primary data to the other
// connected parts. It is important to always fire either the
// ParametersOutReady or the NoParametersOut event. Some parts
// may not behave properly if they are left waiting for this
// information. ParametersOutReady should be fired to send the
// parameters. NoParametersOut should be fired to indicate that there
// is no change in the parameters.
public override void PartCommunicationMain()
{
// Ensure that all of the Web Part's controls are created.
EnsureChildControls();
// Check if connected.
if(_connected)
{
// If there is a listener, fire the ParametersOutReady event.
if(ParametersOutReady != null)
{
// Need to create the ParametersOutReadyEventArgs object
// for the ParametersOutReady event.
ParametersOutReadyEventArgs parametersOutReadyEventArgs = new ParametersOutReadyEventArgs();
if(_parametersReadyButtonClicked) //ParametersOutReady Button was clicked
{
// If there is a listener, fire the ParametersOutReady
// event.
if(ParametersOutReady != null)
{
// Set the values to the values of the text
// boxes.
parametersOutReadyEventArgs.ParameterValues = new string[4];
parametersOutReadyEventArgs.ParameterValues[0] = _fontFamilyListBox.SelectedItem.Value;
parametersOutReadyEventArgs.ParameterValues[1] = _fontColorListBox.SelectedItem.Value;
parametersOutReadyEventArgs.ParameterValues[2] = _fontWeightListBox.SelectedItem.Value;
parametersOutReadyEventArgs.ParameterValues[3] = _fontSizeListBox.SelectedItem.Value;
// Fire the ParametersOutReady event.
ParametersOutReady(this, parametersOutReadyEventArgs);
_parametersReadyButtonClicked = false;
}
}
//The NoParametersOut button was clicked.
else if(_noParametersOutButtonClicked)
{
// If there is a listener, fire the NoParametersOut
// event.
if(NoParametersOut != null)
{
// Fire the event.
NoParametersOut(this, new EventArgs());
_noParametersOutButtonClicked = false;
}
}
// The user didn't click any button.
else
{
// If there is a listener, fire the NoParametersOut
// event.
if(NoParametersOut != null)
{
// Fire the event.
NoParametersOut(this, new EventArgs());
_noParametersOutButtonClicked = false;
}
}
}
}
}
См. также
Справочные материалы
IParametersOutProvider интерфейс
Элементы IParametersOutProvider
Пространство имен Microsoft.SharePoint.WebPartPages.Communication