IListProvider.ListReady event
NOTE: This API is now obsolete.
已擷取整個清單,且已準備好要傳送實作IListConsumer介面的網頁組件時發生。
Namespace: Microsoft.SharePoint.WebPartPages.Communication
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'宣告
<ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartTable instead")> _
Event ListReady As ListReadyEventHandler
'用途
Dim instance As IListProvider
Dim handler As ListReadyEventHandler
AddHandler instance.ListReady, handler
[ObsoleteAttribute("Use System.Web.UI.WebControls.WebParts.IWebPartTable instead")]
event ListReadyEventHandler ListReady
備註
事件處理常式會接收包含與這個事件相關的資料型別Microsoft.SharePoint.WebPartPages.Communication.ListReadyEventArgs的引數。ListReadyEventArgs.List屬性會提供這個事件的特定資訊。
提供的清單變更 (例如,加入、 刪除、 更新的資料列或篩選器變更發生時) 時,應該也會引發ListReady事件。
Examples
下列程式碼範例會覆寫PartCommunicationMain方法,就會引發ListReady事件。這個程式碼範例是提供IListProvider介面的完整範例的一部分。
' 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 the ListReady
' or PartialListReady event. Some parts
' may not behave properly if they are left waiting for this
' information.
Public Overrides Sub PartCommunicationMain()
' Ensure that all of the Web Part's controls are created.
EnsureChildControls()
'Check if connected
If _connected Then
' Create the ListReadyEventArgs object for the ListProviderInit event.
Dim listReadyArgs As New ListReadyEventArgs()
' If user clicked button, send the value.
If _listButtonClicked Then
' Set the List to the value of the table in the
' DataGrid. This is the value that will be sent
' to the consumer Web Part.
listReadyArgs.List = CType(_dataGrid.DataSource, DataTable)
Else
' The user didn't click the button, so send a
' null DataTable to the consumer Web Part.
listReadyArgs.List = Nothing
End If
' Fire the ListReady event.
' The consumer Web Part will receive the DataTable.
RaiseEvent ListReady(Me, listReadyArgs)
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 the ListReady or PartialListReady
// event. Some parts may not behave properly if they are left waiting
// for this information.
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 ListReady event.
if (ListReady != null)
{
// Create the ListReadyEventArgs object for the
// ListProviderInit event.
ListReadyEventArgs listReadyArgs = new ListReadyEventArgs();
// If user clicked button, send the value.
if (_listButtonClicked)
{
// Set the List to the value of the table in the
// DataGrid.
// This is the value that will be sent to the consumer
// Web Part.
listReadyArgs.List = ((DataTable)_dataGrid.DataSource);
}
else
{
// The user didn't click the button, so send a
// null DataTable to the consumer Web Part.
listReadyArgs.List = null;
}
// Fire the ListReady event.
// The consumer Web Part will receive the DataTable.
ListReady(this, listReadyArgs);
}
}
}