Unplanned
Last Updated: 18 Mar 2019 10:15 by ADMIN
Issue can be replicated using the following Grid settings:

  • Wire up the onCommand client-side event to the grid
  • Set the excel format to Biff
  • Set the RenderMode to Lightweight
  • Enable Sorting


<telerik:RadGrid ID="RadGrid2" runat="server" RenderMode="Lightweight" AllowSorting="true">
    <ExportSettings>
        <Excel Format="Biff" />
    </ExportSettings>
    <ClientSettings>
        <ClientEvents OnCommand="onCommand" />
    </ClientSettings>
    <MasterTableView AutoGenerateColumns="True" CommandItemDisplay="Top">
        <CommandItemSettings ShowExportToExcelButton="true" />
    </MasterTableView>
</telerik:RadGrid>
Unplanned
Last Updated: 21 Dec 2021 09:35 by David Stacey
The horizontal scrollbar is not visible in iOS when the grid is empty.

Code to reproduce the problem:
<style>
        html, body, body > form {
            height: 100%;
            padding: 0;
            margin: 0;
        }
    </style>
...
        <telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True" Width="100%"
            AutoGenerateColumns="true"
            OnNeedDataSource="RadGrid1_NeedDataSource">
            <ClientSettings>
                <Scrolling AllowScroll="true" />
            </ClientSettings>
            <MasterTableView Width="1500px">
            </MasterTableView>
        </telerik:RadGrid>

    protected void RadGrid1_NeedDataSource(object sender, Telerik.Web.UI.GridNeedDataSourceEventArgs e)
    {
        (sender as RadGrid).DataSource = GetData();
    }

    private object GetData()
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("column1");
        dt.Columns.Add("column2");
        dt.Columns.Add("column3");
        dt.Columns.Add("column4");
        dt.Columns.Add("column5");
        dt.Columns.Add("column6");
        dt.Columns.Add("column7");
        dt.Columns.Add("column8");

        //dt.Rows.Add(1, 2, 3, 4, 5, 6, 7, 8);

        return dt;
    }
Unplanned
Last Updated: 22 Sep 2017 13:25 by ADMIN
It seems the element somehow considmes the scrolling/touch action and the grid does not scroll unless you hit the gap where the custom element does not reach.

A workaround is to enforce overflow: auto to the scrollable element of the grid. A sample is attached below.

        div.rgDataDiv {
            overflow: auto !important;
        }

Unplanned
Last Updated: 26 Mar 2019 07:56 by ADMIN
The filter expression that we build should use ToUpperCase in the build expresssion.
Unplanned
Last Updated: 08 May 2020 17:22 by ADMIN
If anchor links of GridButtonColumn do not define a text links are still rendered and screen readers read their href attribute. Anchor links with no text could define an attribute area-hidden="true".
Unplanned
Last Updated: 03 Nov 2020 11:16 by ADMIN
The FooterAggregateFormatString functionality of the Grid does not affect the Aggregates values format in a client-bound Grid.

Code to reproduce:
            <telerik:RadGrid RenderMode="Lightweight" ID="RadGrid1" runat="server" ClientDataSourceID="RadClientDataSource1" AllowPaging="true" AllowSorting="true" AllowFilteringByColumn="true" ShowFooter="true">
                <MasterTableView ClientDataKeyNames="CustomerID" EditMode="Batch" CommandItemDisplay="Top" BatchEditingSettings-HighlightDeletedRows="true">
                    <Columns>
                        <telerik:GridBoundColumn DataField="CustomerID" HeaderText="Customer ID"  Aggregate="Count" FooterAggregateFormatString="No currency sign here: {0:C}">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="CompanyName" HeaderText="Company Name" ColumnEditorID="GridTextBoxEditor">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="ContactName" HeaderText="Contact Name" ColumnEditorID="GridTextBoxEditor">
                        </telerik:GridBoundColumn>
                        <telerik:GridBoundColumn DataField="ContactTitle" HeaderText="Contact Title" ColumnEditorID="GridTextBoxEditor">
                        </telerik:GridBoundColumn>
                        <telerik:GridClientDeleteColumn HeaderText="Delete">
                            <HeaderStyle Width="70px" />
                        </telerik:GridClientDeleteColumn>
                    </Columns>
                </MasterTableView>
                <ClientSettings>
                    <ClientEvents OnUserAction="UserAction" />
                </ClientSettings>
            </telerik:RadGrid>
Unplanned
Last Updated: 21 Jun 2018 14:23 by ADMIN
There are two easy solutions:
- set HighlightDeletedRows to false
- use the built-in Save Changes button in the command item

A workaround is attached that allows you to use an external button and highlight deleted rows.
It will cause other changes apart from deletion on a row to be lost, but deleted rows will be sent to the server.
Unplanned
Last Updated: 20 Mar 2019 15:33 by ADMIN
When virtualization is enabled for RadGrid, NeedDataSource is called at every Post back with RebindReason = ExplicitRebind, regardless of the event target.
Unplanned
Last Updated: 09 Aug 2024 09:12 by ADMIN

.hasChanges() results in records flagged for Delete to not actually get deleted when .saveChanges() executes.

I found the same behaviour on a LiveDemo example that checks .hasChanges(): Grid - Binding to Telerik ClientDataSource

Steps to reproduce:

  • Make any change to the first record, such as modifying the Contact Name.
  • On the second record, Click the "x" under the DELETE column to mark it for delete.
  • Click any column heading to sort.  (This calls a UserAction event handler that calls .hasChanges())
  • Choose to Cancel at the popup prompt.
  • Click "Save changes".
  • Monitor the browser console, you will find that webservice UpdateCustomers is called,  but DeleteCustomers is not.

 

Unplanned
Last Updated: 12 Feb 2021 15:52 by ADMIN
Created by: Francesco
Comments: 1
Category: Grid
Type: Bug Report
2

Good morning,

we have a strange issue using RadGrid with horizontal scroll and frozen columns: there a resizing of the height which gets user experience not the best.

See attached gif.

 

Could you please help us?

Unplanned
Last Updated: 11 Jan 2023 15:43 by n/a

When a big number of items are bound to RadGrid on the server side and Virtualization is enabled paging to the last item is not working as expected.

The problem can be reproduced with the setup in the following demo:

Increasing the number of Customers bound to the Grid to more than 1000000 leads to the problem.

Unplanned
Last Updated: 11 Nov 2024 14:16 by ADMIN

Upon inserting a new record after filtering on the Grid with No records, the exception "No property or field 'Name' exists in type 'DataRowView'" is thrown.

Steps to reproduce:

  1. Bind the Grid to an empty data source at initial load
  2. Filter any column
  3. Insert a new record

Code to replicate the issue:

<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" AllowFilteringByColumn="true"
    OnNeedDataSource="RadGrid1_NeedDataSource" OnInsertCommand="RadGrid1_InsertCommand">
    <MasterTableView CommandItemDisplay="Top" DataKeyNames="ID">
        <Columns>
            <telerik:GridEditCommandColumn></telerik:GridEditCommandColumn>
            <telerik:GridButtonColumn CommandName="Delete"></telerik:GridButtonColumn>

            <telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID" ReadOnly="true"
                CurrentFilterFunction="Contains" AutoPostBackOnFilter="true" />

            <telerik:GridBoundColumn DataField="Name" HeaderText="Name" UniqueName="Name"
                AutoPostBackOnFilter="false" />

            <telerik:GridBoundColumn DataField="Category" HeaderText="Category" UniqueName="Category" DataType="System.String"
                CurrentFilterFunction="Contains" AutoPostBackOnFilter="true" />

            <telerik:GridBoundColumn DataField="Price" HeaderText="Price" UniqueName="Price"
                CurrentFilterFunction="Contains" AutoPostBackOnFilter="true" DataFormatString="{0:C}" />
        </Columns>
        <EditFormSettings InsertCaption="Add New Item" />
    </MasterTableView>
</telerik:RadGrid>

 

C#

private const string DataTableSessionKey = "RadGridDataTable";
private DataTable SessionDataSource
{
    get
    {
        DataTable dt = Session[DataTableSessionKey] as DataTable;

        if (dt == null || !IsPostBack)
        {
            // Create an empty DataTable with schema defined
            dt = new DataTable();

            dt.Columns.Add("ID", typeof(int));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Category", typeof(string));
            dt.Columns.Add("Price", typeof(decimal));

            dt.PrimaryKey = new DataColumn[] { dt.Columns["ID"] };

            Session[DataTableSessionKey] = dt;
        }

        return dt;
    }
}
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
    (sender as RadGrid).DataSource = SessionDataSource;
}

protected void RadGrid1_InsertCommand(object sender, GridCommandEventArgs e)
{
    GridEditableItem insertItem = (GridEditableItem) e.Item;

    Hashtable newValues = new Hashtable();

    insertItem.ExtractValues(newValues);

    DataRow findLastItem = SessionDataSource.Select("ID=MAX(ID)").FirstOrDefault();

    newValues["ID"] = findLastItem != null ? (int) findLastItem["ID"] + 1 : 0;

    DataRow rowToInsert = SessionDataSource.NewRow();

    foreach (DictionaryEntry entry in newValues)
    {
        rowToInsert[entry.Key.ToString()] = entry.Value ?? DBNull.Value;
    }

    SessionDataSource.Rows.Add(rowToInsert);
}

Unplanned
Last Updated: 12 Oct 2017 19:57 by Jason
Th header context menu of the Grid gets closed on click (select/deselect a column) if the Grid is initially scrolled horizontally.

Video: https://www.screencast.com/t/Gm1FLHia


Steps to reproduce:
    1. Open the Live Demos solution for "UI for ASP.NET AJAX R1 2017" in VS2015;
    2. Open the page "UI for ASP.NET AJAX R1 2017\Live Demos\Grid\Examples\Functionality\Scrolling\scrolling\DefaultCS.aspx";
    3. Enable the HeaderContextMenu by setting EnableHeaderContextMenu="True" in the tag telerik:RadGrid;
    4. Disable the column freezing.
    5. Run the Demo and open the page "Grid\Examples\Functionality\Scrolling\scrolling\DefaultCS.aspx";
    6. Scroll the horizontal scrollbar of the grid to the right;
    7. Right click on the column header and pick the Columns from the context menu;
    8. Select or unselect any column, the Column Chooser will close by itself;
    9. Now, scroll the horizontal scrollbar of the grid all the way to the left;
    10. Right click on the column header and pick the Column Chooser from the context menu;
    11. Select or unselect any columns, the Column Chooser won't close by itself.
Unplanned
Last Updated: 02 Dec 2020 09:10 by ADMIN
For Bug Report :

Note: We are using MM/dd/yyyy as Internal Date format to prevent issue while inserting or updating value.

Steps to reproduce:
When we use dd-MM-yyyy and yyyy-dd-MM Date DisplayFformat for RadDatePicker/RadDateTimePicker control as well as view mode in Radgrid Batch Edit mode it's render behaviour is inconsistent
1. When dd is less than or equal to 12 then while rendering in edit mode Month and Date is interchanged
2. When dd is greather than 12 then while rendering in edit mode Month and Date is rendered correctly.
Unplanned
Last Updated: 30 Nov 2017 14:14 by AppDev
The reason for the behavior is that the column editor does not move to the cell when you cancel its opening. Opening a cell in the same column expects the column editor to be in the previously opened cell, however, and this causes the error. Repro is attached to illustrate the scenario.

Workarounds:
- Use EditType=Cell so that each cell opens independently of the row (wokaround 1).
- Use the provided function override (workaround 2). Make sure to remove it after upgrading to a release that has the fix. This function override may prevent you from getting other updates and fixes in this function.
- Use a template column and hide the editor based on your condition in the OnBatchEditOpened event (workaround 3)
Unplanned
Last Updated: 19 Dec 2017 10:27 by Attila Antal
There are two possible approaches to overcome this issue:
- First approach would be to get a reference to the GridHTMLEditorColumn and add the desired tools in the code behind using the "OnItemCreated" server event handler of RadGrid.
- Second approach would be to use GridTemplateColumn with RadEditor.
Unplanned
Last Updated: 08 Nov 2021 12:10 by ADMIN
Enable filtering, Enable HeaderContextMenu and HeaderContextMenuFilter.

First, filter using the HeaderContextMenu filter (e.g. OrderDate GreaterThanOrEqualTo "someDate" AND OrderDate LessThanOrEqualTo "someOtherDate"

Second, apply a filter on another column using the Header filter only (e.g. Freight GreaterThanOrEqualTo "4")

At this point, the filtering applied by the HeaderContexFilterMenu is now partially removed.

Issue only appears when Header filter and HeaderContextMenu filter are used in combination. They work as expected when used separately.
Unplanned
Last Updated: 29 May 2020 15:53 by ADMIN
ADMIN
Created by: Attila Antal
Comments: 0
Category: Grid
Type: Bug Report
1
Images that reside in the grid will get resized (scaled down with about 3-5 %) which might cause issues, specially if exporting bar-codes, thus the bar-code scanners won't be able to read them.

Current workaround is to use the Telerik Documents Processing Library  and build the table manually where the images are inserted without changing the size.

Here is an example:

        protected void RadGrid1_InfrastructureExporting(object sender, GridInfrastructureExportingEventArgs e)
        {
            Telerik.Web.UI.ExportInfrastructure.Table table = e.ExportStructure.Tables[0];

            Workbook workbook = new Workbook();
            workbook.Worksheets.Add();

            Worksheet worksheet = workbook.ActiveWorksheet;


            foreach (var row in table.Rows)
            {
                if (row.Index > 1)
                {
                    worksheet.Rows[row.Index - 1].SetHeight(new RowHeight(55, true));
                }

                foreach (var cell in row.Cells)
                {
                    if (row.Index == 1 || cell.ColIndex != 2)
                    {
                        worksheet.Cells[cell.Index.Y - 1, cell.Index.X - 1].SetValue(cell.Value.ToString());
                    }
                    else
                    {
                        FloatingImage image = new FloatingImage(worksheet, new CellIndex(cell.Index.Y - 1, cell.Index.X - 1), 0, 0);
                        Stream stream = File.Open(Server.MapPath(cell.Value.ToString()), FileMode.Open);
                        using (stream)
                        {
                            image.ImageSource = new Telerik.Windows.Documents.Media.ImageSource(stream, "jpg");
                        }
                        worksheet.Shapes.Add(image);
                    }
                }
            }

            byte[] data;

            using (MemoryStream ms = new MemoryStream())
            {
                XlsxFormatProvider xlsProvider = new XlsxFormatProvider();
                xlsProvider.Export(workbook, ms);
                data = ms.ToArray();
            }

            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            Response.Headers.Remove("Content-Disposition");
            Response.AppendHeader("Content-Disposition", "attachment; filename=" + RadGridLista.ExportSettings.FileName + ".xlsx");
            Response.BinaryWrite(data);
            Response.End();
        }
Unplanned
Last Updated: 17 Jun 2020 16:20 by ADMIN
Steps to reproduce the error.

Create a ClientDeleteColumn with CommandName="Delete" and wire up the onCommand client-event to RadGrid.

<telerik:RadGrid ID="RadGrid1" runat="server">
    <MasterTableView>
        <Columns>
            <telerik:GridClientDeleteColumn CommandName="Delete" ButtonType="LinkButton"></telerik:GridClientDeleteColumn>
        </Columns>
    </MasterTableView>
    <ClientSettings>
        <ClientEvents OnCommand="OnCommand" />
    </ClientSettings>
</telerik:RadGrid>

The event handler does not need to do anything.

function OnCommand(sender, args) {
}
Unplanned
Last Updated: 20 Mar 2019 15:45 by ADMIN
Created by: Odd Dahm
Comments: 1
Category: Grid
Type: Bug Report
1
RadGrid with Hierarchical structure throws the error when an item is expanding while it's in edit mode and the Table's HierarchyLoadMode is set to Client.
1 2 3 4 5