Completed
Last Updated: 03 Dec 2024 15:01 by ADMIN
GridAutoCompleteColumn columns cannot be created programmatically during OnLoad event, but only using the OnInit event.

In the attached sample, if you comment out 
panelOnInit.Controls.Add(gridOnInit);
and uncomment
panelOnLoad.Controls.Add(gridOnLoad);
when you click Edit in one row the following exception is thrown
Cannot create column with the specified type name: GridAutoCompleteColumn

But if you comment out 
panelOnLoad.Controls.Add(gridOnLoad);
and uncomment
panelOnInit.Controls.Add(gridOnInit);
the sample works

Note that if you change the GridAutoCompleteColumn for any other control type, for example GridHTMLEditorColumn, both methods will work.
Completed
Last Updated: 11 Nov 2024 15:05 by ADMIN
Created by: Anders Mad.
Comments: 2
Category: Grid
Type: Bug Report
0

Hi, 

Heres a simple one: I have a dynamic grid `MasterTableView.EnableColumnsViewState = false;` on page init and all works fine. However, when the client/browser show a dynamic column thats hidden (or vise versa), and the column is gone on postback (being a dynamic grid this can happen), the LoadClientState tries to get the column - and if it fails to, it breaks down hard.. Instead it should just ignore it, as its just a pretty un-important show/hide state.

Your RadGrid code goes something like this:

LoadClientState ->
if (clientState.ContainsKey("showedColumns")) ->
control.GetColumn(columnUniqueName).Display = true; <-- just ignore this if not found - also on the others like hide, resize etc.

 

Thank you!... +1 for making this html editor a MD flavor instead :)

/Anders

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: 04 Oct 2024 11:30 by Rachel

When the JAWS screen reader is used alongside the Grid with enabled keyboard navigation, using Alt + Up/Down arrow doesn't work as intended, most noticeably trying to use Alt + UpArrow doesn't move the focus to the previous row. 

This behavior can be observer on the Keyboard navigation demo as well

Unplanned
Last Updated: 18 Sep 2024 15:05 by ADMIN

For RadGrid, after setting EnableKeyboardShortcuts to false, I find the Up/Down keys are also disabled. However, according to your online document below, the Up/Down keys shouldn't be disabled in this case.

According the Keyboard Support online demo, these buttons should not get disabled:

"The grid also features an additional property ClientSettings -> KeyboardNavigationSettings -> EnableKeyboardShortcuts which when set to false will disable all keyboard navigation shortcuts except for the Up/Down and Page Up/Page Down keys."

Won't Fix
Last Updated: 16 Aug 2024 11:21 by ADMIN
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: 31 Jul 2024 10:53 by Juraj

It would be good to add this functionality for a better customization of the Grid's newly inserted rows.

Unplanned
Last Updated: 31 Jul 2024 08:19 by ADMIN
Dear Telerik Technical Support Team,

I am reaching out to inquire about the accessibility features of the RadGrid component in C# Webforms, specifically regarding the ability to perform grouping and resizing of columns using keyboard-only navigation in compliance with WCAG 2.2 Level AA standards.

Our organization is committed to ensuring that our web applications meet the Web Content Accessibility Guidelines (WCAG) 2.2 Level AA requirements. A critical part of this compliance involves enabling users to group and sort columns in data grids using only the keyboard.

Could you please confirm if the RadGrid component supports keyboard-only grouping and resizing of columns? Additionally, we would appreciate any guidance or documentation you can provide on how to implement and test these accessibility features within the RadGrid component to ensure compliance with WCAG 2.2 Level AA.

Thank you for your assistance with this matter. We look forward to your prompt response.
Unplanned
Last Updated: 13 Jun 2024 14:39 by Russ
RadGrid batch editing fails when it is inside a RadWindow that is part of WindowManager
Completed
Last Updated: 13 May 2024 11:35 by ADMIN
Release 2024 Q2

When I try to set the Skin to Material I obtain the following Error:

WebResource.axd?d=e4b2sCc8Q8M6A2MgSsDltOpyL908K1Q7T29bPdSz7Supj8wwNwBiCRISuCJlWYcTaJsmG21ZOfynS4jGurXXbpli-ERqUAuqN0-JIBovYD49aTvhGO3Rn_RCmsSdUlmwuseC48k3n557KQEGgkr2hCHOsY41&t=638423073240000000] DETAILS: System.Web Exception: msg:Richiesta webresource non valida.

The problem happens when the ButtonType="ImageButton" is set with the Material skin:

<telerik:GridEditCommandColumn ButtonType="ImageButton" HeaderStyle-Width="20px" >
</telerik:GridEditCommandColumn>
<telerik:GridButtonColumn ButtonType="ImageButton" UniqueName="DeleteColumn" Text="Elimina" HeaderStyle-Width="20px" CommandName="Delete" ConfirmText="Procedere con la cancellazione del Cimitero?"></telerik:GridButtonColumn>

Completed
Last Updated: 19 Apr 2024 14:28 by ADMIN
Release 2024 Q2

Found an additional issue when implementing this on a project:

When aria-enabled=true and we follow their instructions if we have a gridnumericcolumn in the grid, then we get a finding that "Elements must only use supported ARIA attributes" because To solve this problem, you need to fix the following:

 

ASPX

                <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" AllowFilteringByColumn="true" OnNeedDataSource="RadGrid1_NeedDataSource" EnableAriaSupport="true">
                    <ClientSettings>
                        <ClientEvents OnGridCreated="OnGridCreated" />
                    </ClientSettings>
                    <MasterTableView>
                        <Columns>
                            <telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID" />
                            <telerik:GridBoundColumn DataField="Name" HeaderText="Name" UniqueName="Name" />
                            <telerik:GridCheckBoxColumn DataField="IsActive" HeaderText="Active" UniqueName="IsActive" />
                            <telerik:GridNumericColumn DataField="Score" HeaderText="Score" UniqueName="Score" DataType="System.Int32" DataFormatString="{0:N0}" />
                        </Columns>
                    </MasterTableView>
                </telerik:RadGrid>

ASPX.CS

    protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
    {
        // Creating a dummy data source
        var data = new List<DummyData>
        {
            new DummyData { ID = 1, Name = "John Doe", IsActive = true, Score = 88 },
            new DummyData { ID = 2, Name = "Jane Doe", IsActive = false, Score = 92 }
        };

        RadGrid1.DataSource = data;
    }

    public class DummyData
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public bool IsActive { get; set; }
        public int Score { get; set; }    
    }

Completed
Last Updated: 09 Apr 2024 11:45 by ADMIN
ADMIN
Created by: Kostadin
Comments: 2
Category: Grid
Type: Bug Report
4

			
Completed
Last Updated: 16 Jan 2024 15:31 by ADMIN
Release 2024 Q1
Created by: Bill O'Neil
Comments: 0
Category: Grid
Type: Feature Request
0

When the AriaSupport for the Grid is turned on, an aria-label is added to each column header automatically using the UniqueName of the column. The problem is - UniqueName doesn't support empty spaces - all "labels" must be single words or use Underscores - and the screen readers say "underscore."

So my column of "call_date" results in "Call underscore Date" - which is not useful for visually impaired people.

Unplanned
Last Updated: 18 Oct 2023 11:15 by ADMIN
When using a RadGrid with static headers and grouping, columns and column headers are misaligned 
Unplanned
Last Updated: 18 Sep 2023 07:38 by ADMIN

The submenu with filtering options has elements that overflow the sliding element:

Under Review
Last Updated: 14 Aug 2023 12:37 by ADMIN
When a RadGrid has the "AllowScroll" property set to True and is populated via a DataSourceID, calling the ExportToExcel() method on the grid results in the grid immediately rebinding. This undoes any changes made to the grid, like during the recommended way to export Template columns. When AllowScroll=False, the grid does not rebind and Template columns are exported, as expected.
Unplanned
Last Updated: 18 Jul 2023 07:31 by ADMIN

When EnablePostBackOnRowClick="true" and clicking on the RadAutoCompleteBox inside the EditItemTemplate the Grid will make a PostBack.

This issue does not happen with other elements (span, input, button, etc).

Unplanned
Last Updated: 27 Jun 2023 18:30 by Rathna

ResizeGridOnColumnResize is not working the same way when Grid has StaticHeaders.

I want to resize the grid based on the contents and still be able to scroll with headers.

Declined
Last Updated: 25 May 2023 08:22 by Johnny
When scroll inside RadGrid in Chrome on a mobile device or in the DevTools responsive/mobile mode, the browser throws [Intervention] Unable to preventDefault inside passive event listener due to target being treated as passive. See  https://www.chromestatus.com/features/5093566007214080. I get 1 error message for every pixel the grid scrolls. 

The problem is due to jQuery and is reproducible with 1.12.4 and 3.3.1 versions of it.
1 2 3 4 5 6