Использование расширителя «перетащить-и-отпустить»

Некоторые аспекты поведения также доступны в виде элементов управления (web controls). Так, аспект FloatingBehavior имеет двойника – DragOverlayExtender. Этот невизуальный элемент управления можно поместить в страницу для добавления («расширения») элементу управления возможности перетаскивания. Для работы с ним не требуется xml?script, а для доступа к свойствам расширителя можно использовать программный код на стороне сервера.

Вам потребуются следующие свойства расширителя:
Enabled
Активирует эффект
TargetControlID

Ссылка на панель, которую требуется сделать перемещаемой Этот элемент управления озволяет перетаскивать панель с сообщением внутри страницы (в пределах, описанных после примера 16.2):
(asp:DragOverlayExtender ID="DragOverlayExtender1" runat="server"
TargetControlID="DragPanel" Enabled="true" /)

Полный код страницы приводится в примере 16.3 (дополнительная панель с текстом используется для увеличения пространства для перемещения прямоугольника).
Пример 16.3. Добавление поведения «перетащить?и?отпустить» к панели с помощью расширителя
DragDropExtender.aspx
<%@ Page Language="C#" %>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1?transitional.dtd">
ASP.NET AJAX


(body)
(asp:ScriptManager ID="ScriptManager1" runat="server")

(asp:ScriptReference name="PreviewScript.js"
assembly="Microsoft.Web.Preview" /)
(asp:ScriptReference name="PreviewDragDrop.js"
assembly="Microsoft.Web.Preview" /)

(/asp:ScriptManager)
(asp:Panel ID="ContentPanel" CssClass="box" runat="server")

My Portal



Welcome to your personal portal, powered by Microsoft ASP.NET AJAX.
The mail status window is freely draggable.


Welcome to your personal
portal, powered by ASP.NET AJAX.
The mail status window is freely draggable. Welcome to your personal
portal, powered by ASP.NET AJAX.
The mail status window is freely draggable.


[...]
(/asp:Panel)
(asp:Panel CssClass="mailbox" ID="DragPanel" runat="server")


You currently have (asp:Label id="inbox" runat="server")(/asp:Label)
mails in your (a href="http://www.hotmail.com/")inbox(/a).


(/asp:Panel)
(asp:DragOverlayExtender ID="DragOverlayExtender1" runat="server"
TargetControlID="DragPanel" Enabled="true" /)

(/body)
.



Оцените статью: (0 голосов)
0 5 0

Статьи из раздела ASP.NET AJAX на эту тему:
Аспект поведения щелчок
Аспект поведения «перетащить-и-отпустить»
Индивидуализация поведения «перетащить-и-отпустить»
Использование аспектов поведения
Использование компонента Timer