<A class=rfdSkinnedButton href="javascript:void(0)"> <INPUT ... /> </A> var aTag = $("[id$='_btnConfirm']").parent();<CommandItemTemplate><asp:Table ID="tblCommandTemplate" runat="server" Width="1220px" CellSpacing="0" CellPadding="0"> <asp:TableRow ID="trowCommandTemplate1" Height="25px" runat="server" style="display:block;" > <asp:TableCell ID="tcell1" runat="server"> <telerik:RadButton ID="rbtAdd" runat="server" CommandName="InitInsert" Skin="Transparent" Text="Add" Icon-PrimaryIconURL="<%$ Resources:Images,AddRecord16%>" style="position:absolute;left:10px;font-size:10px;" ToolTip="Add New Record" Visible='<%# rgvMainGrid.EditIndexes.Count=0 or Not rgvMainGrid.MasterTableView.IsItemInserted %>' /> <telerik:RadButton ID="rbtEdit" runat="server" CommandName="EditSelected" Skin="Transparent" Text="Edit" Icon-PrimaryIconURL="<%$ Resources:Images,EditRecord16%>" style="position:absolute;left:70px;font-size:12px;" ToolTip="Edit Record" Visible='<%# rgvMainGrid.EditIndexes.Count=0 and Not rgvMainGrid.MasterTableView.IsItemInserted %>' /> <telerik:RadButton ID="rbtDelete" runat="server" CommandName="DeleteSelected" Skin="Transparent" Text="Delete" Icon-PrimaryIconURL="<%$ Resources:Images,DeleteRecord16%>" style="position:absolute;left:129px;font-size:12px;" ToolTip="Delete Record" Visible='<%# rgvMainGrid.EditIndexes.Count=0 and Not rgvMainGrid.MasterTableView.IsItemInserted %>' OnClientClicking="DeleteOnClientClicking" /> <telerik:RadButton ID="rbtCancel" runat="server" CommandName="CancelAll" Skin="Transparent" Text="Cancel" Icon-PrimaryIconURL="<%$ Resources:Images,CancelRecord16%>" style="position:absolute;left:10px;font-size:12px;" ToolTip="Cancel Add/Edit" Visible='<%# rgvMainGrid.EditIndexes.Count > 0 Or rgvMainGrid.MasterTableView.IsItemInserted %>' /> <telerik:RadButton ID="rbtSaveNew" runat="server" CommandName="PerformInsert" Skin="Transparent" Text="Save" Icon-PrimaryIconURL="<%$ Resources:Images,SaveRecord16%>" style="position:absolute;left:80px;font-size:12px;" ToolTip="Save New Record" Visible='<%# rgvMainGrid.MasterTableView.IsItemInserted%>' /> <telerik:RadButton ID="rbtSave" runat="server" CommandName="UpdateEdited" Skin="Transparent" Text="Save" Icon-PrimaryIconURL="<%$ Resources:Images,SaveRecord16%>" style="position:absolute;left:80px;font-size:12px;" ToolTip="Save Edited Record" Visible='<%# rgvMainGrid.EditIndexes.Count > 0 AND Not rgvMainGrid.MasterTableView.IsItemInserted%>'/> <telerik:RadButton ID="rcbClearGrouping" runat="server" CommandName="ClearGrouping" Skin="Transparent" Text="Clear Grouping" Icon-PrimaryIconURL="<%$ Resources:Images,Grouping16%>" style="position:absolute;left:840px;font-size:12px;" ToolTip="Clear Grouping"/> <telerik:RadButton ID="rbtFilterFields" runat="server" ButtonType="StandardButton" ToggleType="CustomToggle" OnClientToggleStateChanged="ShowHideFilterFields" AutoPostBack="false" ToolTip="Show/Hide Filter Fields" Skin="Transparent" CssClass="css_GRD02_Filter_Button" Width="20px"> <ToggleStates> <telerik:RadButtonToggleState Text=" Hide Filters" PrimaryIconUrl ="<%$ Resources:Images,FilterRecord16%>" /> <telerik:RadButtonToggleState Text=" Show Filters" PrimaryIconUrl="<%$ Resources:Images,FilterRecord16%>" /> </ToggleStates> </telerik:RadButton> <telerik:RadButton ID="rcbRefresh" runat="server" CommandName="RebindGrid" Skin="Transparent" Text="Refresh" Icon-PrimaryIconURL="<%$ Resources:Images, ReloadBlue16 %>" style="position:absolute;left:1052px;font-size:12px;" ToolTip="Refresh Grid"/> <telerik:RadButton ID="rcbExportToExcel" runat="server" CommandName="ExportToExcel" Skin="Transparent" Text="Export" Icon-PrimaryIconURL="<%$ Resources:Images,Excel16%>" style="position:absolute;left:1129px;font-size:12px;" ToolTip="Export To Excel" /> <telerik:RadButton ID="rbtGridToolbar" runat="server" ButtonType="ToggleButton" ToggleType="CheckBox" style="position:absolute;left:1206px;font-size:12px;" width="20px" Height="16px" AutoPostBack="false" Checked="true" ToolTip="Show/Hide Grid Settings" OnClientCheckedChanged ="ShowHideGridSettings"> <ToggleStates> <telerik:RadButtonToggleState ImageUrl="../../App_Themes/Images/Arrows/Expand Down 16.ico" Selected="true" /> <telerik:RadButtonToggleState ImageUrl="../../App_Themes/Images/Arrows/Expand Up 16.ico" /> </ToggleStates> </telerik:RadButton> </asp:TableCell> </asp:TableRow> <asp:TableRow ID="trowCommandTemplate2" Height="32px" runat="server" > <asp:TableCell> <asp:Label ID="lblSelectTemplate" runat="server" CssClass="css_GRD02_SelectTemplate_Label" Text="Select Template:" /> <telerik:RadComboBox ID="rcbGridTemplate" runat="server" CssClass="css_GRD02_SelectTemplate_RadCombo" DropDownWidth="200px" Width="200px" EnableLoadOnDemand="true" HighlightTemplatedItems="true" AutoPostBack="false" AllowCustomText="false" OnClientSelectedIndexChanged="GridTemplateOnSelectedIndexChanged" OnItemsRequested="rcbGridTemplate_OnItemsRequested" OnItemCreated=" rcbGridTemplate_ItemCreated" EnableViewState="true"/> <asp:Label ID="lblTemplateType" runat="server" CssClass="css_GRD02_TemplateType_Label" Text="Type:" /> <telerik:RadComboBox ID="rcbTemplateType" runat="server" CssClass="css_GRD02_TemplateType_RadCombo" DropDownWidth="80px" Width="80px" EnableLoadOnDemand="true" HighlightTemplatedItems="true" AutoPostBack="false" AllowCustomText="false" OnItemsRequested="rcbTemplateType_OnItemsRequested" Enabled="false" EnableViewState="true" OnItemCreated="rcbTemplateType_ItemCreated" /> <telerik:RadButton ID="rbtApplySettings" runat="server" CommandName="ApplySettings" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Apply Settings" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsApply16%>" ToolTip="Apply Selected Template Settings To Grid"/> <telerik:RadButton ID="rbtSaveTemplate" runat="server" CommandName="SaveTemplate" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Save Template" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsSave16%>" ToolTip="Save Current Grid Settings To Selected Template"/> <telerik:RadButton ID="rbtAddTemplate" runat="server" CommandName="AddNewTemplate" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Save To A New Template" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsAdd16%>" ToolTip="Save Current Grid Settings To A New Template" AutoPostBack="false" OnClientClicked="ShowHideCommandTemplate"/> <telerik:RadButton ID="rbtDeleteTemplate" runat="server" CommandName="DeleteTemplate" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Delete Template" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsDelete16%>" ToolTip="Delete Selected Template"/> <telerik:RadButton ID="rbtSetDefault" runat="server" CommandName="SetDefault" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Set As Default" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsDefault16%>" ToolTip="Save Selected Template As Default"/> <telerik:RadButton ID="rbtSettingDetail" runat="server" CommandName="GridSettingsDetail" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button" Text="Template Settings" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettings16%>" Tooltip="Show Template Settings"/> <asp:Label ID="lblTemplateName" runat="server" CssClass="css_GRD02_TemplateName_Label" Text="Name:" /> <asp:TextBox ID="txtTemplateName" runat="server" CssClass="css_GRD02_TemplateName_TextBox" Text="Enter A New Template Name" /> <telerik:RadButton ID="rbtSaveNewTemplate" runat="server" CommandName="SaveNewTemplate" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button_Hide" Text="Save" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsSave16%>" ToolTip="Save New Template" OnClientClicking="SaveNewTemplate" /> <telerik:RadButton ID="rbtCancelNewTemplate" runat="server" CommandName="CancelNewTemplate" Skin="Transparent" CssClass="css_GRD02_GridSettings_Button_Hide" Text="Cancel" Icon-PrimaryIconURL="<%$ Resources:Images,GridSettingsCancel16%>" ToolTip="Cance New Template" AutoPostBack="false" OnClientClicked="ShowHideCommandTemplate" /></asp:TableCell> </asp:TableRow> </asp:Table> </CommandItemTemplate>/*Function Is Used To Show/Hide Grid Template Items In The Command Item Template Based On Whether A CurrentTemplate Is Being Displayed Or Add New Template Has Been Selected.*/function ShowHideCommandTemplateExternal(sender, args, radGrid) { var rcbTemplate = $telerik.findControl(radGrid, 'rcbGridTemplate'); var rbtApply = $telerik.findControl(radGrid, 'rbtApplySettings'); var rbtSave = $telerik.findControl(radGrid, 'rbtSaveTemplate'); var rbtDelete = $telerik.findControl(radGrid, 'rbtDeleteTemplate'); var rbtAdd = $telerik.findControl(radGrid, 'rbtAddTemplate'); var rbtDefault = $telerik.findControl(radGrid, 'rbtSetDefault'); var rbtSettings = $telerik.findControl(radGrid, 'rbtSettingDetail'); var rbtCancel = $telerik.findControl(radGrid, 'rbtCancelNewTemplate'); var rbtSaveNew = $telerik.findControl(radGrid, 'rbtSaveNewTemplate'); var rcbType = $telerik.findControl(radGrid, 'rcbTemplateType'); /* Get The Hidden Fields That Hold The Client Id's Of The Controls In The Command Item Template That Are Not Telerik Controls */ var hdfSelect = document.getElementById('wccGridSettings_hdfSelectTemplate'); var lblSelect = document.getElementById(hdfSelect.value); var hdfTemplateName = document.getElementById('wccGridSettings_hdfTemplateName'); var txtTemplateName = document.getElementById(hdfTemplateName.value); var hdfNameLabel = document.getElementById('wccGridSettings_hdfTemplateNameLabel'); var lblTemplateName = document.getElementById(hdfNameLabel.value); var blnDisplay; var displayAdd; var displayCurrent; var cmdName = sender.get_commandName(); if (cmdName == 'AddNewTemplate') { blnDisplayAdd = true; blnDisplayCurrent = false; displayAdd = 'block'; displayCurrent = 'none'; rcbType.trackChanges(); rcbType.enable(); rcbType.updateClientState(); rcbType.commitChanges(); } else { blnDisplayAdd = false; blnDisplayCurrent = true; displayAdd = 'none'; displayCurrent = 'block'; /* Disable The Template Type When Add New Template Option Has Been Cancelled Or The New Template Has Been Saved */ rcbType.trackChanges(); rcbType.disable(); rcbType.updateClientState(); rcbType.commitChanges(); } lblSelect.style.display = displayCurrent; rcbTemplate.set_visible(blnDisplayCurrent); rbtApply.set_visible(blnDisplayCurrent); rbtSave.set_visible(blnDisplayCurrent); rbtDelete.set_visible(blnDisplayCurrent); rbtAdd.set_visible(blnDisplayCurrent); rbtDefault.set_visible(blnDisplayCurrent); lblTemplateName.style.display = displayAdd; txtTemplateName.style.display = displayAdd; rbtSettings.set_visible(blnDisplayCurrent); rbtSaveNew.set_visible(blnDisplayAdd); rbtCancel.set_visible(blnDisplayAdd); }
My problem is that when I'm getting the column.headerStyle.width is not the right ones. What i mean by that is that only the resized column acctualy changes width value where the others just keep having the same as before resizing´, even if they do acctually change like f.eks in the example, but its probally just visual in my case.
what do I do wrong?
Here is my savesettings string:
private string SaveSettings()
{
object[] gridSettings = new object[3];
//Save groupBy
GridGroupByExpressionCollection groupByExpressions = gridInstance.MasterTableView.GroupByExpressions;
object[] groupExpressions = new object[groupByExpressions.Count];
int count = 0;
foreach(GridGroupByExpression expression in groupByExpressions)
{
groupExpressions[count] = ((IStateManager)expression).SaveViewState();
count++;
}
gridSettings[0] = groupExpressions;
//Save sort expressions
gridSettings[1] = ((
IStateManager)gridInstance.MasterTableView.SortExpressions).SaveViewState();
//Save columns order
int columnsLength = gridInstance.MasterTableView.Columns.Count + gridInstance.MasterTableView.AutoGeneratedColumns.Length;
Pair [] columnOrder = new Pair[ columnsLength ];
ArrayList allColumns = new ArrayList( columnsLength );
allColumns.AddRange(gridInstance.MasterTableView.Columns );
allColumns.AddRange(gridInstance.MasterTableView.AutoGeneratedColumns);
int i = 0;
foreach( GridColumn column in allColumns )
{
Pair p = new Pair();
p.First = column.OrderIndex;
p.Second = column.HeaderStyle.Width;
columnOrder[i] = p;
i++;
}
gridSettings[2] = columnOrder;
// Serialize and return
LosFormatter formatter = new LosFormatter();
StringWriter writer = new StringWriter();
formatter.Serialize( writer, gridSettings );
return writer.ToString();
}
Regards,
Mircea
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TTabStrip.ascx.cs" Inherits="OmegaWeb.WebControls.Seguridad.TTabStrip" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><telerik:RadAjaxLoadingPanel runat="server" ID="LoadingPanel1" Height="75px" Width="75px"></telerik:RadAjaxLoadingPanel><telerik:RadTabStrip ID="RadTabStrip1" SelectedIndex="0" CssClass="tabStrip" runat="server" MultiPageID="RadMultiPage1" Skin="Default" AutoPostBack="true" ShowBaseLine="True" ClickSelectedTab="True" ontabclick="RadTabStrip1_TabClick" ></telerik:RadTabStrip><telerik:RadAjaxManager runat="server" ID="RadAjaxManagerProxy1"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadTabStrip1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadTabStrip1" /> <telerik:AjaxUpdatedControl ControlID="RadMultiPage1" LoadingPanelID="LoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="RadMultiPage1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadTabStrip1" /> <telerik:AjaxUpdatedControl ControlID="RadMultiPage1" LoadingPanelID="LoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManager><telerik:RadMultiPage ID="RadMultiPage1" runat="server" SelectedIndex="0" EnableEmbeddedScripts="true"> <telerik:RadPageView ID="RadPageView1" runat="server"> </telerik:RadPageView></telerik:RadMultiPage>public partial class TTabStrip : System.Web.UI.UserControl { protected void Page_Load(object sender, System.EventArgs e) { if (!Page.IsPostBack) { DrillDownModel drillDown = GenericController<DrillDownModel>.Current; List<TabStripModel> tabs = SecurityInfo.GetTabStripsUsuario(drillDown); if (!SecurityInfo.HasAccessToDrillDown(drillDown)) { NotifyNoAccess(drillDown); Server.Transfer("/NoAccessPage.aspx", false); return; } tabs.ForEach(tab => AddTab(tab.Texto, tab.TargetDrillDownId == 0 ? tab.URL : string.Format("/WebForms/DrillDown/DrillDownRedirect.aspx?TS={0}", tab.Id))); setPersistTab(); } } private void setPersistTab() { string sessionTabId = string.Format("DrillDown_{0}", GenericController<DrillDownModel>.CurrentId); string tabName; if (HttpContext.Current.Session[sessionTabId] != null) { tabName = HttpContext.Current.Session[sessionTabId].ToString(); RadTab tab = RadTabStrip1.FindTabByText(tabName); if (tab != null) { tab.Selected = true; RadPageView1.ContentUrl = tab.Value; } } else { RadTab tab = RadTabStrip1.Tabs.FirstOrDefault(); if (tab != null) { tab.Selected = true; RadPageView1.ContentUrl = tab.Value; } } } private void AddTab(string tabName, string tabValue) { RadTab tab = new RadTab(tabName, tabValue); RadTabStrip1.Tabs.Add(tab); } private void NotifyNoAccess(DrillDownModel drilldown) { MailMessage mail = new MailMessage(); mail.From = new MailAddress("Omega@uai.cl"); mail.To.Add(ConfigurationManager.AppSettings["Omega Team"]); mail.Subject = "Acceso DrillDown - Omega"; mail.IsBodyHtml = false; StringBuilder body = new StringBuilder(); body.AppendLine(string.Format("DrillDownId:{0}", drilldown.Id)); body.AppendLine(string.Format("Nombre DrillDown:{0}", drilldown.Titulo)); body.AppendLine(string.Format("UsuarioId: {0}", SecurityInfo.LoginUser.Id)); body.AppendLine(string.Format("Usuario: {0}", SecurityInfo.LoginUser.GetPersonaRef()._ApellidosNombre)); body.AppendLine(string.Format("AUTH_USER: {0}", Request.ServerVariables["AUTH_USER"])); body.AppendLine(string.Format("LOGON_USER: {0}", Request.ServerVariables["LOGON_USER"])); body.AppendLine(string.Format("REMOTE_USER: {0}", Request.ServerVariables["REMOTE_USER"])); body.AppendLine(string.Format("REMOTE_ADDR: {0}", Request.ServerVariables["REMOTE_ADDR"])); body.AppendLine(string.Format("REMOTE_HOST: {0}", Request.ServerVariables["REMOTE_HOST"])); body.AppendLine(string.Format("SERVER_NAME: {0}", Request.ServerVariables["SERVER_NAME"])); mail.Body = body.ToString(); SmtpClient smtp = new SmtpClient(ConfigurationManager.AppSettings["SMTPServer"]); smtp.Send(mail); } protected void RadTabStrip1_TabClick(object sender, RadTabStripEventArgs e) { string sessionTabId = string.Format("DrillDown_{0}", GenericController<DrillDownModel>.CurrentId); HttpContext.Current.Session[sessionTabId] = e.Tab.Text; RadPageView1.ContentUrl = e.Tab.Value; RadPageView1.ResolveUrl(e.Tab.Value); } }