VB.Net - Атрибут RadDock DockHandle не действует (Telerik)
Я пытаюсь создать простую программу, которая позволяет мне перемещать панели в разные области на экране с помощью Telerik's RadDock
библиотека.
Я пытался следовать этому онлайн-примеру, насколько это возможно, но по какой-то причине процесс захвата и перетаскивания панелей вообще не действует в моей программе, несмотря на то, что список атрибутов копируется почти точно.
Я установил DockHandle
свойство по-разному для каждого RadDock
элемент, но ни один из них не работает вообще.
Код показан ниже:
<telerik:RadDockLayout runat="server" ID="RadDockLayout1">
<table>
<tr>
<td>
<telerik:RadDockZone runat="server" ID="RadDockZone1" MinHeight="200px" Width="200px">
<telerik:RadDock runat="server" ID="Dock1" Title="RadDock1" DockHandle="None"
Text="No DockHandle. Cannot be dragged." Width="200px"
EnableEmbeddedSkins="False" Skin="Blue">
<ContentTemplate>
<asp:PlaceHolder ID="ph1" runat="server"></asp:PlaceHolder>
</ContentTemplate></telerik:RadDock>
</telerik:RadDockZone>
</td>
<td>
<telerik:RadDockZone runat="server" ID="RadDockZone2" MinHeight="200px" Width="200px">
<telerik:RadDock runat="server" ID="Dock2" Title="RadDock2" DockHandle="Grip"
Text="Grip DockHandle. Drag by Top." Width="200px"
EnableEmbeddedSkins="False" Skin="Blue">
<ContentTemplate>
<asp:PlaceHolder ID="ph2" runat="server"></asp:PlaceHolder>
</ContentTemplate>
</telerik:RadDock>
</telerik:RadDockZone>
</td>
<td>
<telerik:RadDockZone runat="server" ID="RadDockZone3" MinHeight="200px" Width="200px">
<telerik:RadDock runat="server" ID="Dock3" Title="RadDock3" DockHandle="TitleBar"
Text="TitleBar DockHandle. Drag by TitleBar." Width="200px"
EnableEmbeddedSkins="False" Skin="Blue">
<ContentTemplate>
<asp:PlaceHolder ID="ph4" runat="server"></asp:PlaceHolder>
</ContentTemplate>
</telerik:RadDock>
</telerik:RadDockZone>
</td>
</tr>
</table>
</telerik:RadDockLayout>
Страница загружается, но два RadDock
s, которые должны быть перетаскиваемыми, не могут быть перемещены вообще, несмотря на DockHandle
устанавливается явно в HTML.
У кого-нибудь есть идеи, почему это может быть?
ОБНОВИТЬ
Я добавил 4-й RadDockZone
а также RadDock
который содержит RadioButtonList
, Я написал событие SelectedIndexChanged для этого списка и связал его в HTML, но событие никогда не запускается.
<td>
<telerik:RadDockZone runat="server" ID="RadDockZone4" MinHeight="200px" Width="200px">
<telerik:RadDock runat="server" ID="Dock4" Title="RadDock4" DockHandle="None" Width="200px"
EnableEmbeddedSkins="False" Skin="Blue">
<ContentTemplate>
<div>
Pick a skin for the RadDocks...
<br />
<asp:RadioButtonList runat="server" ID="radSkins" OnSelectedIndexChanged="skin_Selected">
<asp:ListItem Text="Black Skin" Value="Black" Selected="True"></asp:ListItem>
<asp:ListItem Text="Blue Skin" Value="Blue"></asp:ListItem>
<asp:ListItem Text="White Skin" Value="White"></asp:ListItem>
</asp:RadioButtonList>
</div>
</ContentTemplate>
</telerik:RadDock>
</telerik:RadDockZone>
</td>
Это заставляет меня думать, что есть нечто более фундаментальное, вызывающее RadDock
не взаимодействовать, так как выбор из RadioButtonList
возможно, но не вызывает событие. На данный момент кажется, что ничего на фактической предоставленной веб-странице не отвечает.
Спасибо Марк
1 ответ
<telerik:RadDockZone runat="server" ID="RadDockZone7" MinHeight="200px" Width="200px">
<telerik:RadDock runat="server" ID="Dock4" Title="RadDock4" DockHandle="None" Width="200px"
EnableEmbeddedSkins="False" Skin="Blue">
<ContentTemplate>
<div>
Pick a skin for the RadDocks...<br />
<asp:RadioButtonList runat="server" ID="RadioButtonList1" OnSelectedIndexChanged="skin_Selected" AutoPostBack="True">
<asp:ListItem Text="Black Skin" Value="Black" Selected="True"></asp:ListItem>
<asp:ListItem Text="Blue Skin" Value="Blue"></asp:ListItem>
<asp:ListItem Text="White Skin" Value="White"></asp:ListItem>
</asp:RadioButtonList>
</div>
</ContentTemplate>
</telerik:RadDock>
</telerik:RadDockZone>
SelectedIndexChanged
не сработало, потому что вы забыли установить AutoPostBack = "true"
, Как только он будет установлен, вы сможете выполнить код в SelectedIndexChanged
событие.
Что касается проблемы с дескриптором док-станции, я не думаю, что есть какие-либо проблемы с моей попытки. Мне удалось применить три типа к элементу управления RadDock, и они работали так, как ожидалось. Grip/TitleBar позволили перетаскивать элемент управления RadDock. Так что именно вы имели в виду под "не работает"? Были ли какие-либо ошибки на стороне клиента, которые могли бы привести к тому, что элемент управления не работал должным образом
Демонстрация работы с док-станцией RadDock: http://demos.telerik.com/aspnet-ajax/dock/examples/dockhandle/defaultcs.aspx