or
Forget it. The template I was working from was done by another programmer who I don't have contact with ... or trust.


<telerik:RadGrid ID="RadGrid1" runat="server" Skin="Web20" OnItemCreated="RadGrid1_ItemCreated" OnItemDataBound="RadGrid1_ItemDataBound" OnColumnCreated="RadGrid1_ColumnCreated" AutoGenerateColumns="False" ShowStatusBar="True" CellSpacing="0" GridLines="None" AllowAutomaticInserts="True"> <HeaderContextMenu CssClass="GridContextMenu GridContextMenu_Default"></HeaderContextMenu> <MasterTableView DataKeyNames="CATEGORY_CDE, PARENT_CDE" ShowHeader="true" HierarchyDefaultExpanded="false" AllowSorting="true" CommandItemDisplay="Bottom" editmode="InPlace" InsertItemDisplay="Bottom"> <SelfHierarchySettings KeyName="CATEGORY_CDE" ParentKeyName="PARENT_CDE" /> <CommandItemSettings ExportToPdfText="Export to PDF" AddNewRecordText="Add New Category"></CommandItemSettings> <Columns> <telerik:GridExpandColumn FilterControlAltText="Filter ExpandColumn column" Visible="True"> </telerik:GridExpandColumn> <telerik:GridEditCommandColumn UniqueName="UpdateColumn" FilterControlAltText="Filter EditCommandColumn column" Visible="True" EditText="" InsertText="" CancelText="" ButtonType="ImageButton" EditImageUrl="../images/blank.gif"> </telerik:GridEditCommandColumn> <telerik:GridBoundColumn DataField="Category_Cde" UniqueName="Category_Cde" Visible="true"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Parent_cde" UniqueName="Parent_cde" Visible="true"> </telerik:GridBoundColumn> </Columns> <CommandItemSettings ExportToPdfText="Export to PDF"></CommandItemSettings> <RowIndicatorColumn FilterControlAltText="Filter RowIndicator column"> <HeaderStyle Width="20px"></HeaderStyle> </RowIndicatorColumn> <ExpandCollapseColumn FilterControlAltText="Filter ExpandColumn column" Visible="True"> <HeaderStyle Width="20px"></HeaderStyle> </ExpandCollapseColumn> <EditFormSettings> <EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn> </EditFormSettings> </MasterTableView> <ClientSettings AllowExpandCollapse="true" /> <FilterMenu EnableImageSprites="False"></FilterMenu> </telerik:RadGrid>Protected Sub RadGrid1_ItemCommand(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand Dim itemKey As String 'Inactivates non selected hierarchy levels If (e.CommandName = RadGrid.ExpandCollapseCommandName) Then Dim currentItem As GridDataItem = DirectCast(e.Item, GridDataItem) Dim currentRowIndex As Integer = currentItem.ItemIndex Dim currentCatKey As String = currentItem.GetDataKeyValue("CATEGORY_CDE").ToString() Dim currentParentKey As String = currentItem.GetDataKeyValue("PARENT_CDE").ToString() If (Not currentItem.Expanded) Then 'If an item is expanded then hide the other rows at that level For Each ditem As GridDataItem In RadGrid1.Items itemKey = ditem.GetDataKeyValue("PARENT_CDE").ToString() If currentRowIndex <> ditem.ItemIndex And currentParentKey = ditem.GetDataKeyValue("PARENT_CDE").ToString() Then 'Trying to find the right way to suppress the option to add categories for unopened levels 'RadGrid1.MasterTableView.CommandItemSettings.ShowAddNewRecordButton = False 'RadGrid1.MasterTableView.CommandItemSettings.ShowRefreshButton = False ' RadGrid1.MasterTableView.CommandItemDisplay = GridCommandItemDisplay.None 'RadGrid1.AllowAutomaticInserts = False
'Enables the fields for the row EnableDisableItem(ditem, True)
ditem.Visible = False
Else 'Disables the fields for the row EnableDisableItem(ditem, False) End If Next Else For Each ditem As GridDataItem In RadGrid1.Items itemKey = ditem.GetDataKeyValue("PARENT_CDE").ToString() If currentParentKey = ditem.GetDataKeyValue("PARENT_CDE").ToString() Then ditem.Visible = True 'Enables fields for row EnableDisableItem(ditem, True) End If Next End If End If If (e.CommandName = "PerformInsert") Then e.Canceled = True Dim dgi As GridDataInsertItem = TryCast(e.Item, GridDataInsertItem) updateCategory("AddCat", dgi) RadGrid1.EditIndexes.Clear() RadGrid1.Rebind() End If rbtnSave.Visible = TrueEnd Sub<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!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>When AutoPostBackOnFilter is on Loading Panel is not modal</title></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="scriptManager" runat="server"> </telerik:RadScriptManager> <telerik:RadAjaxManager ID="ajaxManager" runat="server" DefaultLoadingPanelID="loading"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="grid"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="grid" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="loading" runat="server" Skin="Windows7" Transparency="1"> </telerik:RadAjaxLoadingPanel> <p> The setting of ShowFilterIcon along with AutoPostBackOnFilter for grid columns causes inconsistent behavior of the loading panel modality. <ul> <li> Case 1 - Incorrect modal behavior when ShowFilterIcon="false" and AutoPostBackOnFilter="true" </li> <li> Case 2 - Correct modal behavior when ShowFilterIcon="true" and AutoPostBackOnFilter="true" </li> </ul> </p> <p> To have time to observe the behavior, long filter times are simulated by Thread.Sleep() - about 5 seconds - in code behind. <br /> <h4>Steps to reproduce the incorrect behavior:</h4> <ol> <li> Enter filter text in the 'Case 1' column. </li> <li> Press enter. </li> <li> Using mouse, click anywhere on the grid. Note that the filter textbox will also recieve focus if clicked. </li> <li> Observe the loading panel disappears, and after 5 or so seconds, the filter operation finishes successfully. </li> </ol> <h4>Steps to observe the correct behavior:</h4> <ol> <li> Enter filter text in the 'Case 2' column </li> <li> Click the filter button. </li> <li> Using mouse, click anywhere on the grid or the filter textbox. </li> <li> Observe the loading panel is modal and does not disappear until completion of the filter process. </li> </ol> </p> <br /> <telerik:RadGrid ID="grid" runat="server" AllowFilteringByColumn="True" AutoGenerateColumns="False" AllowPaging="True" Skin="Windows7" OnNeedDataSource="grid_NeedDataSource"> <MasterTableView> <Columns> <telerik:GridBoundColumn DataField="Id" UniqueName="Id" AllowFiltering="false" HeaderText="Id"/> <telerik:GridBoundColumn DataField="Name" UniqueName="Name" ShowFilterIcon="false" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" HeaderText="Case 1 - Incorrect - Loading panel will not be modal when filtering on this column by pressing the enter key"> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Title" UniqueName="Title" ShowFilterIcon="true" AutoPostBackOnFilter="true" CurrentFilterFunction="Contains" HeaderText="Case 2 - Correct - Loading panel will still be modal when filtering on this column by clicking the filter button"> </telerik:GridBoundColumn> </Columns> </MasterTableView> </telerik:RadGrid> </form></body></html>using System;using System.Linq;using System.Collections.Generic;using System.Threading;using Telerik.Web.UI;public partial class _Default : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { Thread.Sleep(3000); if (!this.IsPostBack) { this.BuildData(); } } protected void grid_NeedDataSource(object sender, GridNeedDataSourceEventArgs e) { this.grid.DataSource = this.Data; } private List<SampleDataItem> Data { get { return (List<SampleDataItem>)this.ViewState["Data"]; } set { this.ViewState["Data"] = value; } } private void BuildData() { var query = from i in Enumerable.Range(1, 10000) select new SampleDataItem() { Id = i, Name = Guid.NewGuid().ToString(), Title = Guid.NewGuid().ToString() }; this.Data = query.ToList(); }}using System;[Serializable]public class SampleDataItem{ public SampleDataItem() { } public long Id { get; set; } public string Name { get; set; } public string Title { get; set; }}<%@ Page Title="<%$ Resources:RLResource, PagesRWForgottenPasswordTitle %>" Language="C#" MasterPageFile="~/Common/MasterPages/BaseMasterPage.master" AutoEventWireup="true" CodeFile="rwForgottenPassword.aspx.cs" Inherits="GeneralNS.RL_Pages_rwForgottenPassword" %><asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> <script type="text/javascript"> //Get RadWindow function GetRadWindow() { var oWindow = null; if (window.radWindow) oWindow = window.radWindow; else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; return oWindow; } //Close RadWindow function Close() { GetRadWindow().Close(); } </script></asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"><asp:Panel ID="TopCloseLinkButtonPanel" runat="server" HorizontalAlign="<%$ Resources:RLResource, NoContentFloat %>" > <asp:Label ID="excuteWindowClose" runat="server" Width="410px"></asp:Label> <asp:LinkButton ID="TopCloseLinkButton" runat="server" Text="<%$ Resources:RLResource, PagesRWForgottenPasswordTopCloseLinkButton %>" OnClick="CloseLinkButton_Click" ></asp:LinkButton></asp:Panel></asp:Content>using System;using System.Web.UI;using System.Web.UI.WebControls;using Telerik.Web.UI;using System.Linq;using System.Xml;using System.Xml.Linq;namespace GeneralNS{ public partial class RL_Pages_rwForgottenPassword : BasePage { protected void Page_Load(object sender, EventArgs e) { } //Close the forgotten password radwindow protected void CloseLinkButton_Click(object sender, EventArgs e) { excuteWindowClose.Text = "<script type='text/javascript'>Close();</" + "script>"; } }}<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> <script src="http://localhost:53965/abcde.com/Common/Design/Javascript/General.js" type="text/javascript"></script></asp:Content><
telerik:GridCheckBoxColumn DataField="IsChildDictionary" Visible="false" UniqueName="IsChildDictionary" DataType="System.Boolean" AllowFiltering="false">
| function OnRowDragStarted(sender, eventArgs) |
| { |
| } |