Hi,
I am getting the formatting problem in RADGRID. the header columns are not getting aligned with the code.
Kindly, see the below code and suggest a solution:
<rad:radgrid id="rgvCRSummary" runat="server" gridlines="both" height="115px" isdynamic="False"
skin="Master" skinspath="~/App_Themes/MasterTheme/Skins" width="100%">
<HeaderStyle CssClass="Grid_headerHP" />
<ItemStyle CssClass="Grid_ItemHP" />
<AlternatingItemStyle CssClass="Grid_ItemHP" />
<SelectedItemStyle CssClass="Grid_SelectedHP" />
<MasterTableView EnableColumnsViewState="true" TableLayout="Fixed" Width="100%">
<Columns>
<rad:GridBoundColumn DataField="heading" UniqueName="heading" DataFormatString = "<nobr>{0}</nobr>"><HeaderStyle Width="30%" /></rad:GridBoundColumn>
<rad:GridBoundColumn DataField="sales_pos" HeaderText="<nobr>Sales Position</nobr>" UniqueName="sales_pos" DataFormatString = "<nobr>{0}</nobr>"></rad:GridBoundColumn>
<rad:GridBoundColumn DataField="Geo" HeaderText="Geography" UniqueName="Geo" DataFormatString = "<nobr>{0}</nobr>"></rad:GridBoundColumn>
<rad:GridBoundColumn DataField="Acc" HeaderText="Account" UniqueName="Acc" DataFormatString = "<nobr>{0}</nobr>"></rad:GridBoundColumn>
<rad:GridBoundColumn DataField="Presc" HeaderText="Prescriber" UniqueName="Presc" DataFormatString = "<nobr>{0}</nobr>"></rad:GridBoundColumn>
</Columns>
</MasterTableView>
</rad:radgrid>
Please find the attached file as my web page having RadGrid.
I am using the radgrid version 5.1.1.0 and IE8 as my web browser.
Please suggest me how can we resolve with this misalignment of column with this version.
Thanks,
Manoj Singh
Hi ,
My asp.net page contains a radscheduler , whenever I view this page I get the following error.
System.Security.Cryptography.CryptographicException: Padding is invalid and cannot be removed.
at System.Security.Cryptography.RijndaelManagedTransform.DecryptData(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount, Byte[]& outputBuffer, Int32 outputOffset, PaddingMode paddingMode, Boolean fLast)
at System.Security.Cryptography.RijndaelManagedTransform.TransformFinalBlock(Byte[] inputBuffer, Int32 inputOffset, Int32 inputCount)
at System.Security.Cryptography.CryptoStream.FlushFinalBlock()
at System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, IVType ivType, Boolean useValidationSymAlgo)
at System.Web.UI.Page.DecryptStringWithIV(String s, IVType ivType)
at System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
radFileExplorer.Grid.ID = radGridViewName;
radFileExplorer.Grid.AllowSorting = true;
radFileExplorer.Grid.ItemDataBound += new GridItemEventHandler(radFileExplorer_ItemDataBound);
radFileExplorer.Grid.SortCommand += new GridSortCommandEventHandler(radFileExplorer_SortCommand);
radFileExplorer.TreeView.NodeClick += new RadTreeViewEventHandler(treeView_NodeClick);
Below is the code written for radFileExplorer_SortCommand event. The below event is not getting invoked on click of the column header.
void
radFileExplorer_SortCommand(object sender, GridSortCommandEventArgs e)
{
string sortDir = "ASC";
DataView dv = new DataView(Documents);
string viewStateKey = "sortDirection" + e.SortExpression;
if (ViewState[viewStateKey] != null)
{
sortDir = ((string)ViewState[viewStateKey] == "ASC") ? "DESC" : "ASC";
}
ViewState[viewStateKey] = sortDir;
dv.Sort = e.SortExpression +
" " + sortDir;
SortExpression = dv.Sort;
GridView docListGrid = (GridView)this.FindControl(radGridViewName);
if (docListGrid != null)
{
docListGrid.DataSource = dv;
docListGrid.DataBind();
}
}
This is quite urgent and any help would be appriciated.
Many thanks in advance.
Regards
Rajeev
public void Page_Load(object sender, EventArgs e) { // Get Total ProcessTemplates SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["MSCBE.DashboardConnectionString"].ConnectionString); SqlCommand cmd = new SqlCommand("SELECT COUNT(ProcessTemplate_id) AS total FROM ProcessTemplate", conn); conn.Open(); int intTotalProcessTemplates = Convert.ToInt32(cmd.ExecuteScalar()); conn.Close(); // Create grids RadGrid[] GridName = new RadGrid[intTotalProcessTemplates]; for (int i = 0; i < intTotalProcessTemplates; ++i) { // Create mastertable GridName[i] = new RadGrid(); GridName[i].DataSource = GetDataTables.GetDataTable("SELECT * FROM ProcessTemplate WHERE ProcessTemplate_id = " + (i + 1)); GridName[i].MasterTableView.DataKeyNames = new string[] { "ProcessTemplate_id" }; GridName[i].Skin = "Black"; GridName[i].AutoGenerateColumns = false; GridName[i].AllowPaging = true; GridName[i].ShowStatusBar = true; // Columns create GridName[i].MasterTableView.Columns.Add(CreateGridColumn("Process name", "Name", 10.0)); GridName[i].MasterTableView.Columns.Add(CreateGridColumn("Process description", "Description", 80.0)); GridName[i].MasterTableView.Columns.Add(CreateGridColumn("Parent", "Parent", 10.0)); // Create detail table GridTableView tableViewStartProcesses = new GridTableView(GridName[i]); tableViewStartProcesses.Name = "DetailTable_" + i; tableViewStartProcesses.DataKeyNames = new string[] { "Process_id" }; tableViewStartProcesses.AutoGenerateColumns = false; tableViewStartProcesses.AllowPaging = true; tableViewStartProcesses.ShowFooter = true; tableViewStartProcesses.ShowHeadersWhenNoRecords = true; tableViewStartProcesses.CommandItemDisplay = GridCommandItemDisplay.Top; // Reset Counter //Count[i] = new int(); int counter = 0; CountItems countitem = new CountItems(); countitem.id = i; // Fix result from stored proc: GetAllProcessesAndSteps_SP DataSet _dataset = BLProcessesAndSteps.GetAllProcessesAndSteps((i + 1)); if (_dataset.Tables.Count > 0) { var query = from r in _dataset.Tables[0].AsEnumerable() where r.Field<decimal>("templateid") == (i + 1) // DO NOT REMOVE FROM STORED PROC select r; // Get total columns int TotalColumns = query.AsDataView().Table.Columns.Count; GridBoundColumn[] gbcColumnName = new GridBoundColumn[TotalColumns]; // Loop trough header items for (int j = 0; j < TotalColumns; ++j) { // Create detailcolumns gbcColumnName[j] = new GridBoundColumn(); gbcColumnName[j].ReadOnly = true; string strData = query.AsDataView().Table.Columns[j].ToString(); if (strData == "Process_id" || strData == "templateId" || strData == "ProcessName") { gbcColumnName[j].Visible = false; gbcColumnName[j].ReadOnly = true; } string strQuery = "SELECT DISTINCT(CriteriaType.Name), CriteriaType.CriteriaType_id, Process.ProcessTemplate_id FROM CriteriaType INNER JOIN CriteriaValue ON CriteriaType.CriteriaType_id = CriteriaValue.CriteriaType_id INNER JOIN Process ON CriteriaValue.Process_id = Process.Process_id WHERE Process.ProcessTemplate_id = " + (i + 1); DataTable dtCriteriaTypes = GetDataTables.GetDataTable(strQuery); string[] strValues = new string[dtCriteriaTypes.AsDataView().Table.Rows.Count]; for (int k = 0; k < dtCriteriaTypes.AsDataView().Table.Rows.Count; ++k) { strValues[k] = dtCriteriaTypes.AsDataView().Table.Rows[k]["Name"].ToString(); if (strData == strValues[k]) { gbcColumnName[j].ReadOnly = false ; counter++; } } countitem.count=counter; gbcColumnName[j].HeaderText = strData; gbcColumnName[j].DataField = strData; // Add detailcolumns tableViewStartProcesses.Columns.Add(gbcColumnName[j]); } Count.Add(countitem); // Add Details to table GridName[i].MasterTableView.DetailTables.Add(tableViewStartProcesses); // Rebind tableViewStartProcesses.DataSource = query.AsDataView(); } // Add to placeholder this.StartProcessPlaceHolder.Controls.Add(GridName[i]); // Events GridName[i].InsertCommand += new GridCommandEventHandler(OverviewProcess_InsertCommand); }<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="RadGridDynamicColumns._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>Sample Rad Grid Example</title></head><body> <form id="form1" runat="server"><telerik:RadScriptManager runat="server" /> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RadGrid1"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="gvwPlayers" LoadingPanelID="RadAjaxLoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" /> <telerik:RadGrid id="_radGrid" runat="server" OnNeedDataSource="radGrid_NeedDataSource" AllowSorting="true" AutoGenerateColumns="false" Width="100mm"> </telerik:RadGrid> </form></body></html>using System;using Telerik.Web.UI;namespace RadGridDynamicColumns{ // A test data class public class Widget { public string Name { get; set; } public string Description { get; set; } } public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this._radGrid.Columns.Add(new GridBoundColumn { HeaderText = "Name", DataField = "Name" }); this._radGrid.Columns.Add(new GridBoundColumn { HeaderText = "Description", DataField = "Description" }); } } public Widget[] TestData = new[] { new Widget { Name = "FooBar", Description = "WidgetFooBar" }, new Widget { Name = "Harold", Description = "Biggles" } }; protected void radGrid_NeedDataSource(object source, GridNeedDataSourceEventArgs e) { this._radGrid.DataSource = this.TestData; } }}