Hi,
I have a problem with overlapping floating docks. If I try to open 2 consecutive floating dock in one Layout, second one overwhelm first. But if I move first one with my mouse than second one appears perfectly. How can I provide both appears without client handle...
You may find my adjusted code below.
PS: I'm using latest stable version of ASP.NET AJAX component (Telerik.Web.UI: 2010.3.1317.35)
Thanx.
.aspx part:
.cs part:
I have a problem with overlapping floating docks. If I try to open 2 consecutive floating dock in one Layout, second one overwhelm first. But if I move first one with my mouse than second one appears perfectly. How can I provide both appears without client handle...
You may find my adjusted code below.
PS: I'm using latest stable version of ASP.NET AJAX component (Telerik.Web.UI: 2010.3.1317.35)
Thanx.
.aspx part:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
<
telerik:RadStyleSheetManager
id
=
"RadStyleSheetManager1"
runat
=
"server"
/>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
asp:HiddenField
ID
=
"hdnDeneme"
runat
=
"server"
/>
<
telerik:RadScriptManager
ID
=
"RadScriptManager1"
runat
=
"server"
>
<
Scripts
>
<%--Needed for JavaScript IntelliSense in VS2010--%>
<%--For VS2008 replace RadScriptManager with ScriptManager--%>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.Core.js"
/>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.jQuery.js"
/>
<
asp:ScriptReference
Assembly
=
"Telerik.Web.UI"
Name
=
"Telerik.Web.UI.Common.jQueryInclude.js"
/>
</
Scripts
>
</
telerik:RadScriptManager
>
<
script
type
=
"text/javascript"
>
var latestDock;
function DockCustomCommand(dock, args) {
latestDock = dock;
var commandElement = args.Command.get_element();
document.getElementById("hdnDeneme").value = dock._index;
showMenuAt(args.event, commandElement)
}
function showMenuAt(e, offsetElement) {
var contextMenu = $find("RadContextMenu1");
var bounds = $telerik.getBounds(offsetElement);
var x = bounds.x + bounds.width;
var y = bounds.y + bounds.height;
contextMenu.showAt(x, y);
$telerik.cancelRawEvent(e);
}
</
script
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadContextMenu1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadDockLayout1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
telerik:RadSkinManager
ID
=
"RadSkinManager1"
Runat
=
"server"
Skin
=
"Black"
>
</
telerik:RadSkinManager
>
<
telerik:RadDockLayout
ID
=
"RadDockLayout1"
runat
=
"server"
>
<
telerik:RadDockZone
ID
=
"RadDockZone1"
runat
=
"server"
Height
=
"600px"
Width
=
"600px"
Orientation
=
"Horizontal"
>
</
telerik:RadDockZone
>
</
telerik:RadDockLayout
>
<
telerik:RadContextMenu
ID
=
"RadContextMenu1"
runat
=
"server"
OnItemClick
=
"RadContextMenu1_ItemClick"
>
<
Items
>
<
telerik:RadMenuItem
Text
=
"Change Title"
Value
=
"Title"
/>
<
telerik:RadMenuItem
Text
=
"Open Floating Dock"
Value
=
"FullBox"
/>
</
Items
>
</
telerik:RadContextMenu
>
</
form
>
</
body
>
</
html
>
.cs part:
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Configuration;
using System.Web.Security;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Telerik.Web.UI;
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
RadDock rd = null;
DockCommand dc = new DockCommand()
{
Name = "Deneme",
OnClientCommand = "DockCustomCommand"
};
for (int i = 0; i < 12; i++)
{
rd = new RadDock()
{
ID = "radDock" + i,
EnableAnimation = true,
EnableRoundedCorners = true,
DockMode = DockMode.Docked,
Width = 140,
Height = 80,
Title = "radDock" + i,
Text = "Hi - " + i
};
rd.Style.Add(HtmlTextWriterStyle.Margin, "2px");
rd.Commands.Add(dc);
RadDockZone1.Controls.Add(rd);
}
rd.Dispose();
}
protected void RadContextMenu1_ItemClick(object sender, RadMenuEventArgs e)
{
switch (e.Item.Value)
{
case "FullBox":
RadDock rd = new RadDock()
{
ID = "hdd1",
DockMode = DockMode.Floating,
EnableAnimation = true,
EnableRoundedCorners = true,
EnableViewState = false,
Width = 200,
Title = "Floating",
Text = "Floating"
};
RadDockLayout1.Controls.Add(rd);
rd.Dispose();
break;
case "Title":
((RadDock)RadDockZone1.Controls[Convert.ToInt32(hdnDeneme.Value)]).Title = e.Item.Value;
break;
default:
break;
}
}
}