<%@ Register TagPrefix="ecd" Namespace="ASPNETExpert.WebControls.DemoControls" Assembly="ASPNETExpert.WebControls.DemoControls" %>
<%@ Register TagPrefix="ecd" TagName="Footer" Src="../../Controls/Footer.ascx"%>
<%@ Register TagPrefix="ecd" TagName="Header" Src="../../Controls/Header.ascx"%>
<%@ Register TagPrefix="ec" Namespace="ASPNETExpert.WebControls" Assembly="ASPNETExpert.WebControls" %>
<%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="True" Inherits="ASPNETExpert.WebControls.Demo.Menu.Advanced.DragDrop._default" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>ASP.NET Menu : ExpertMenu Demo : Drag-And-Drop Menu Item</title>
<link href="../../style.css" type="text/css" rel="stylesheet">
</HEAD>
<body xmlns:ec="urn:http://aspnetexpert.com/ExpertControls.xsd">
<form id="Form1" method="post" runat="server">
<script language="javascript">
function Drop(dragDrop) {
if(dragDrop.Source.OnClientBefore && dragDrop.Source.OnClientBefore.Drop)
return true;
var target = '';
if(dragDrop.Target)
target = (dragDrop.Target.GetType() == 'MenuSeparator' ? 'before separator' : 'onto "' + dragDrop.Target.Text + '"');
else
if(dragDrop.TargetBefore)
target = ' before ' + (dragDrop.TargetBefore.GetType() == 'MenuSeparator' ? 'separator' : '"' + dragDrop.TargetBefore.Text + '"');
else
if(dragDrop.TargetAfter)
target = ' after ' + (dragDrop.TargetAfter.GetType() == 'MenuSeparator' ? 'separator' : '"' + dragDrop.TargetAfter.Text + '"');
return confirm('Drop the item "' + dragDrop.Source.Text + '" ' + target + '?');
}
function RandomDrag() {
if(Math.random()<0.4)
return true;
alert('It is not time to drag!');
return false;
}
function RandomDrop() {
if(Math.random()<0.6)
return true;
alert('It is not time to drop!');
return false;
}
</script>
<ecd:Header runat="server" ID="Header1"></ecd:Header>
<ec:ExpertMenu runat="server" id="ExpertMenu1" Skin="Office03Olive" DragAndDropEnabled="true">
<OnClientBefore DropHandler="Drop" />
<TopGroup>
<Items>
<ec:MenuSeparator />
<ec:MenuItem Text="File">
<SubMenu>
<Items>
<ec:MenuItem Text="New... (droppable at random)" OnClientBefore-Drop="RandomDrop()" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_new.gif" />
<ec:MenuItem Text="Open..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_open.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Send To (not draggable)" IsDraggable="False">
<SubMenu>
<Items>
<ec:MenuItem Text="Mail Recipient" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_mailRecipient.gif" />
<ec:MenuItem Text="Mail Recipient (for Review)..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_mailRecipientReview.gif" />
<ec:MenuItem Text="Mail Recipient (As Attachment)..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_mailRecipientAttachmnt.gif" />
<ec:MenuItem Text="Routing Recipient..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_routingRecipient.gif" />
<ec:MenuItem Text="Exchange Folder..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_exchangeFolder.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Microsoft Office PowerPoint..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_powerPoint.gif" />
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuSeparator />
<ec:MenuItem Text="Save" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_save.gif" />
<ec:MenuItem Text="Save As" />
<ec:MenuItem Text="Save as Web Page" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_saveAsWebPage.gif" />
<ec:MenuItem Text="File Search" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_fileSearch.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Page Setup..." />
<ec:MenuItem Text="Print Preview" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_printPreview.gif" />
<ec:MenuItem Text="Print..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_print.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Exit" />
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuItem Text="Edit">
<SubMenu>
<Items>
<ec:MenuItem Text="Cut" Enabled="False" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_cut.gif" />
<ec:MenuItem Text="Copy" Enabled="False" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_copy.gif" />
<ec:MenuItem Text="Office Clipboard..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_clipboard.gif" />
<ec:MenuItem Text="Paste" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_paste.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Find..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_find.gif" />
<ec:MenuItem Text="Clear (draggable at random)" OnClientBefore-Drag="RandomDrag()">
<SubMenu>
<Items>
<ec:MenuItem Text="Formats" />
<ec:MenuItem Text="Contents" />
</Items>
</SubMenu>
</ec:MenuItem>
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuItem Text="View">
<SubMenu>
<Items>
<ec:MenuItem Text="Normal" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_normal.gif" />
<ec:MenuItem Text="Web Layout" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_webLayout.gif" />
<ec:MenuItem Text="Reading Layout" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_readingLayout.gif" />
<ec:MenuItem Text="Outline" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_outline.gif" />
<ec:MenuSeparator />
<ec:MenuItem Text="Ruler" Checked="True" IconLook-Base="CheckItem" />
<ec:MenuSeparator />
<ec:MenuItem Text="Document Map" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_documentMap.gif" />
<ec:MenuItem Text="Thumbnails" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_thumbnails.gif" />
<ec:MenuItem Text="Header and Footer" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_headerFooter.gif" />
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuItem Text="Format">
<SubMenu>
<Items>
<ec:MenuItem Text="Font..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_font.gif" />
<ec:MenuItem Text="Paragraph..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_paragraph.gif" />
<ec:MenuItem Text="Bullets and Numbering..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_bullets.gif" />
<ec:MenuItem Text="Borders and Shading..." />
<ec:MenuSeparator />
<ec:MenuItem Text="Frames">
<SubMenu>
<Items>
<ec:MenuItem Text="Table of Contents in Frame" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_tableOfContents.gif" />
<ec:MenuItem Text="New Frames Page" />
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuItem Text="Auto Format..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_autoFormat.gif" />
<ec:MenuItem Text="Styles and Formatting..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_stylesAndFormatting.gif" />
<ec:MenuItem Text="Reveal Formatting..." DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_revealFormatting.gif" />
</Items>
</SubMenu>
</ec:MenuItem>
<ec:MenuItem Text="Help">
<SubMenu>
<Items>
<ec:MenuItem Text="Microsoft Office Word Help" DualIconLook-InitLook-LeftIcon-ImageUrl="../../images/Office2003/icon_help.gif" />
<ec:MenuItem Text="Show the Office Assistant" />
<ec:MenuSeparator />
<ec:MenuItem Text="Microsoft Office Online" />
<ec:MenuItem Text="Contact Us" />
<ec:MenuSeparator />
<ec:MenuItem Text="Word Perfect Help" />
<ec:MenuSeparator />
<ec:MenuItem Text="Check for Updates" />
<ec:MenuItem Text="Detect and Repair" />
<ec:MenuItem Text="Activate Product..." />
<ec:MenuItem Text="Customer Feedback Options..." />
<ec:MenuSeparator />
<ec:MenuItem Text="About Microsoft Office Word" />
</Items>
</SubMenu>
</ec:MenuItem>
</Items>
</TopGroup>
</ec:ExpertMenu>
<br>
<asp:Button Runat="server" Text="Load Menu from XML" ID="DeserializeMenu" onclick="DeserializeMenu_Click" />
<br>
<ecd:DescriptionView runat="server" IconUrl="../../images/kv.gif" ID="Descriptionview1">
<ecd:Description id="Description1" runat="server">Set <b>DragAndDropEnabled="true"</b> in
<b>ExpertMenu</b> to enable drag and drop the menu items.</ecd:Description>
<ecd:Description id="Description2" runat="server">Process a server-side event
<b>MenuItemMove</b> to process the movement at the server.</ecd:Description>
<ecd:Description id="Description3" runat="server">You can also process drag and drop
events on the client-side controlling whether to enable dragging and dropping an item.</ecd:Description>
<ecd:Description id="Description4" runat="server">You can easily serialize / deserialize menu
configuration into / from XML.</ecd:Description>
</ecd:DescriptionView>
<ec:CodeViewTab id="CodeViewTab1" runat="server" ImagesBaseUrl="../../images/tab/">
<ec:TabItem runat="server" Text="aspx" ID="Tabitem1">
<pre class="aspcode">
<ecd:SyntaxHighlight runat="server" ContentType="ASPX" OutputFile="default.aspx" ID="Syntaxhighlight1"/>
</pre>
</ec:TabItem>
<ec:TabItem runat="server" Text="C#" ID="Tabitem2">
<pre class="aspcode">
<ecd:SyntaxHighlight runat="server" ContentType="C#" OutputFile="default.aspx.cs" ID="Syntaxhighlight2"/>
</pre>
</ec:TabItem>
<ec:TabItem runat="server" Text="VB" ID="Tabitem3">
<pre class="aspcode">
<ecd:SyntaxHighlight runat="server" ContentType="VB" OutputFile="default_vb.aspx.vb" ID="Syntaxhighlight3"/>
</pre>
</ec:TabItem>
</ec:CodeViewTab>
<ecd:Footer runat="server" ID="Footer1"></ecd:Footer>
</form>
</body>
</HTML>