<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %><%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %><%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %><%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %><%@ Import Namespace="Microsoft.SharePoint" %><%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="RadDateTest.aspx.cs" Inherits="Test.SharePoint.Layouts.RadDateTest" DynamicMasterPageFile="~masterurl/default.master" %><asp:Content ID="PageHead" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server"></asp:Content><asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server"> <asp:Panel ID="pnlControls" runat="server"> </asp:Panel></asp:Content><asp:Content ID="PageTitle" ContentPlaceHolderID="PlaceHolderPageTitle" runat="server">Application Page</asp:Content><asp:Content ID="PageTitleInTitleArea" ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea" runat="server" >My Application Page</asp:Content>using System;using Microsoft.SharePoint;using Microsoft.SharePoint.WebControls;using System.Web.UI.WebControls;using Telerik.Web.UI;namespace Test.SharePoint.Layouts{ public partial class RadDateTest : LayoutsPageBase { protected void Page_Load(object sender, EventArgs e) { CreateDateField(0, "One", false); CreateDateField(1, "Two", true); } private void CreateDateField(int ID, string name, bool isRequired) { // Creates a lable with the name of the selection... Label lbl = new Label(); lbl.Width = 160; lbl.ID = "lblItem" + ID.ToString(); lbl.Text = name + ":"; lbl.Style.Add("font-weight", "700"); this.pnlControls.Controls.Add(lbl); // Creates a date picker text box RadDatePicker txt = new RadDatePicker(); txt.Width = 230; txt.ID = "datItem" + ID.ToString(); txt.Style.Add("margin-top", "3px"); txt.Calendar.ShowRowHeaders = false; txt.ShowPopupOnFocus = true; this.pnlControls.Controls.Add(txt); // If it is required, then add a lable showing its required... if (isRequired) { Label lblReq = new Label(); lblReq.ID = "lblRequired" + ID.ToString(); lblReq.Text = "*"; lblReq.Style.Add("margin-left", "15px"); lblReq.Style.Add("color", "Red"); this.pnlControls.Controls.Add(lblReq); } // Add a new lable for a new line feed in HTML. this.pnlControls.Controls.Add(new Label() { Text = "<br />" }); } }}public void ProcessRequest(HttpContext context) { var editor = new Telerik.Web.UI.RadEditor(); editor.ContentFilters = Telerik.Web.UI.EditorFilters.DefaultFilters | Telerik.Web.UI.EditorFilters.PdfExportFilter; //editor.ExportContent += new Telerik.Web.UI.EditorExportContentEventHandler(editor_ExportContent); editor.ExportSettings.FileName = "cv"; editor.ExportSettings.Pdf.Title = "TEST"; editor.Content = "<b>HTML</b>"; editor.ExportToPdf(); context.Response.Write("H"); }public class CustomProvider : FileSystemContentProvider
{
public CustomProvider(HttpContext context, string[] searchPatterns, string[] viewPaths, string[] uploadPaths, string[] deletePaths, string selectedUrl, string selectedItemTag)
: base(context, searchPatterns, viewPaths, uploadPaths, deletePaths, selectedUrl, selectedItemTag)
{ }
public override DirectoryItem ResolveDirectory(string path)
{
DirectoryItem originalFolder = base.ResolveDirectory(path);
FileItem[] originalFiles = originalFolder.Files;
List<FileItem> filteredFiles = new List<FileItem>();
// Filter the files
foreach (FileItem originalFile in originalFiles)
{
if (!this.IsFiltered(originalFile.Name))
{
filteredFiles.Add(originalFile);
}
}
DirectoryItem newFolder = new DirectoryItem(originalFolder.Name, originalFolder.Location, originalFolder.FullPath, originalFolder.Tag, originalFolder.Permissions, filteredFiles.ToArray(), originalFolder.Directories);
return newFolder;
}
public override DirectoryItem ResolveRootDirectoryAsTree(string path)
{
DirectoryItem originalFolder = base.ResolveRootDirectoryAsTree(path);
DirectoryItem[] originalDirectories = originalFolder.Directories;
List<DirectoryItem> filteredDirectories = new List<DirectoryItem>();
// Filter the folders
foreach (DirectoryItem originalDir in originalDirectories)
{
if (!this.IsFiltered(originalDir.Name))
{
filteredDirectories.Add(originalDir);
}
}
DirectoryItem newFolder = new DirectoryItem(originalFolder.Name, originalFolder.Location, originalFolder.FullPath, originalFolder.Tag, originalFolder.Permissions, originalFolder.Files, filteredDirectories.ToArray());
return newFolder;
}
private bool IsFiltered(string name)
{
return name == Web.SETTINGS_FILENAME;
}
<telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" LoadingPanelID="RadAjaxLoadingPanel1"><telerik:RadTreeView ID="RadTreeView1" CheckBoxes="true" Runat="server" OnContextMenuItemClick= "menuClicked" OnClientContextMenuItemClicking="clientMenuClicking" OnNodeEdit="RadTreeView1_NodeEdit"><ContextMenus> <telerik:RadTreeViewContextMenu ID="ctxMenuAdd" runat="server"> <Items> <telerik:RadMenuItem Value="addNode" Text="Add Node"> </telerik:RadMenuItem> <telerik:RadMenuItem Value="delNode" Text="Delete Node"> </telerik:RadMenuItem> <telerik:RadMenuItem Value="renNode" Text="Rename Node"> </telerik:RadMenuItem> </Items> </telerik:RadTreeViewContextMenu></ContextMenus></telerik:RadTreeView></telerik:RadAjaxPanel>function clientMenuClicking(sender, args) { var menuItem = args.get_menuItem(); var treeNode = args.get_node(); menuItem.get_menu().hide(); switch (menuItem.get_value()) { case "addNode": var windowResult = window.showModalDialog("newNode.html", "Enter Value", "dialogHeight: 300px; dialogWidth: 300px;"); document.getElementById("HiddenField1").value = windowResult; break; case "renNode": treeNode.startEdit(); break; } }protected void RadTreeView1_NodeEdit(object sender, RadTreeNodeEditEventArgs e) { e.Node.Text = e.Text; }The problem is, when I right click on the node and select "Rename" the node turns into a text box only for a split second, then it goes back to normal mode.
It seems when I click the rename option, the client side code is firing and the node is turning into a text box. but then somehow a page postback is occurring which is removing the textbox.
How can I get rid of the issue?
| combo.OnClientDropDownOpening = "OnClientDropDownOpening"; |
| function OnClientDropDownOpening(sender, args) |
| { |
| } |