WebPartManager.Connections Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает ссылку на коллекцию текущих подключений на веб-странице.
public:
property System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ Connections { System::Web::UI::WebControls::WebParts::WebPartConnectionCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
public System.Web.UI.WebControls.WebParts.WebPartConnectionCollection Connections { get; }
[<System.ComponentModel.Browsable(false)>]
member this.Connections : System.Web.UI.WebControls.WebParts.WebPartConnectionCollection
Public ReadOnly Property Connections As WebPartConnectionCollection
Значение свойства
Коллекция WebPartConnectionCollection, в которой содержится набор объектов WebPartConnection.
- Атрибуты
Примеры
В следующем примере кода демонстрируется декларативное и программное использование WebPartManager элемента управления .
Пример кода состоит из четырех частей:
Пользовательский элемент управления, позволяющий изменять режимы отображения на странице веб-частей.
Веб-страница, содержащая два настраиваемых WebPart элемента управления, которые можно подключить, и
<asp:webpartmanager>
элемент .Файл исходного кода, содержащий два пользовательских WebPart элемента управления и пользовательский интерфейс.
Описание работы примера в браузере.
Следующий код содержит только часть веб-страницы примера. Вам также потребуется пользовательский элемент управления и исходный код для пользовательских элементов управления, упомянутых выше. Получите эти два элемента из раздела Пример в обзоре WebPartManager класса.
В следующем коде веб-страницы показано, как программно использовать Connections свойство для получения количества текущих подключений на странице. Обратите внимание, что в <script>
разделе тега код для обработки двух событий элемента WebPartManager управления обращается к свойству Connections для получения счетчика.
<%@ Page Language="C#" %>
<%@ register TagPrefix="uc1"
TagName="DisplayModeMenuCS"
Src="DisplayModeMenuCS.ascx" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.CS.Controls"
Assembly="ConnectionSampleCS" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void UpdateLabelData(int wpCount, int connCount)
{
Label1.Text = "WebPart Control Count: " + wpCount.ToString();
Label2.Text = "Connections Count: " + connCount.ToString();
}
protected void WebPartManager1_WebPartsConnected(object sender, WebPartConnectionsEventArgs e)
{
UpdateLabelData(WebPartManager1.WebParts.Count,
WebPartManager1.Connections.Count);
}
protected void WebPartManager1_WebPartsDisconnected(object sender, WebPartConnectionsEventArgs e)
{
UpdateLabelData(WebPartManager1.WebParts.Count,
WebPartManager1.Connections.Count);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<!-- Reference the WebPartManager control. -->
<asp:WebPartManager ID="WebPartManager1" runat="server"
OnWebPartsConnected="WebPartManager1_WebPartsConnected"
OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
<div>
<uc1:DisplayModeMenuCS ID="displaymode1" runat="server" />
<!-- Reference consumer and provider controls in a zone. -->
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<aspSample:ZipCodeWebPart ID="zip1"
runat="server"
Title="Zip Code Control"/>
<aspSample:WeatherWebPart ID="weather1"
runat="server"
Title="Weather Control" />
</ZoneTemplate>
</asp:WebPartZone>
<hr />
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label2" runat="server" Text=""></asp:Label>
<!-- Add a ConnectionsZone so users can connect controls. -->
<asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
</div>
</form>
</body>
</html>
<%@ Page Language="vb" %>
<%@ register TagPrefix="uc1"
TagName="DisplayModeMenuVB"
Src="DisplayModeMenuVB.ascx" %>
<%@ register tagprefix="aspSample"
Namespace="Samples.AspNet.VB.Controls"
Assembly="ConnectionSampleVB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub WebPartManager1_WebPartsConnected( _
ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
UpdateLabelData(WebPartManager1.WebParts.Count, _
WebPartManager1.Connections.Count)
End Sub
Protected Sub WebPartManager1_WebPartsDisconnected( _
ByVal sender As Object, _
ByVal e As System.Web.UI.WebControls.WebParts.WebPartConnectionsEventArgs)
UpdateLabelData(WebPartManager1.WebParts.Count, _
WebPartManager1.Connections.Count)
End Sub
Private Sub UpdateLabelData(ByVal wpCount As Integer, _
ByVal connCount As Integer)
Label1.Text = "WebPart Control Count: " & wpCount.ToString()
Label2.Text = "Connections Count: " & connCount.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<!-- Reference the WebPartManager control. -->
<asp:WebPartManager ID="WebPartManager1" runat="server" OnWebPartsConnected="WebPartManager1_WebPartsConnected" OnWebPartsDisconnected="WebPartManager1_WebPartsDisconnected" />
<div>
<uc1:DisplayModeMenuVB ID="displaymode1" runat="server" />
<!-- Reference consumer and provider controls in a zone. -->
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<aspSample:ZipCodeWebPart ID="zip1"
runat="server"
Title="Zip Code Control"/>
<aspSample:WeatherWebPart ID="weather1"
runat="server"
Title="Weather Control" />
</ZoneTemplate>
</asp:WebPartZone>
<hr />
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
<br />
<asp:Label ID="Label2" runat="server" Text=""></asp:Label>
<!-- Add a ConnectionsZone so users can connect controls. -->
<asp:ConnectionsZone ID="ConnectionsZone1" runat="server" />
</div>
</form>
</body>
</html>
Загрузив веб-страницу в браузере, щелкните раскрывающийся список Режим отображения и выберите Подключить , чтобы переключить страницу в режим подключения. В режиме <asp:connectionszone>
подключения элемент используется для создания соединений между элементами управления. В режиме подключения щелкните стрелку вниз в заголовке окна элемента управления Почтовый индекс , чтобы активировать меню команд, а затем выберите подключиться. После отображения пользовательского интерфейса подключения щелкните ссылку Создать соединение с потребителем . Появится ячейка с элементом управления раскрывающимся списком. Выберите Управление погодой в раскрывающемся списке и нажмите кнопку Подключить , чтобы завершить соединение двух элементов управления. Нажмите кнопку Закрыть, а затем используйте раскрывающийся список Режим отображения , чтобы вернуть страницу в обычный режим просмотра. Обратите внимание, что метка теперь отображает количество подключений и количество WebPart элементов управления. Если теперь вы вернелись в режим подключения и отключили два элемента управления, при возвращении в режим просмотра содержимое метки должно быть обновлено, а подключения не должны быть.
Комментарии
Свойство Connections предоставляет способ доступа к текущему набору подключений на странице. Сама коллекция доступна только для чтения, и разработчики, которые хотят управлять определенным подключением из коллекции, должны использовать WebPartManager такие методы, как ConnectWebParts и DisconnectWebParts.