Duplicated
Last Updated: 02 Mar 2020 13:16 by ADMIN
Created by: René
Comments: 1
Category: UI for Blazor
Type: Feature Request
2

Please add a PDF Viewer blazor component!

For the meantime: Could you provide an example of how to use the Telerik UI for net core PDF Viewer in a NET core 3 Blazor app?

Duplicated
Last Updated: 21 Jul 2022 09:00 by ADMIN
Created by: Lance
Comments: 8
Category: UI for Blazor
Type: Bug Report
2

<TelerikDatePicker Id="startDate" @bind-Value="@StartDate" Width="160px" Format="dd-MMM-yy"></TelerikDatePicker>

DateTime StartDate=DateTime.Now

 

When our users type to click on the year and type another one they lose one of the digits - so if they try typing 19 or 18 for instance then it sets the date to year 01

 

 

Duplicated
Last Updated: 02 Mar 2020 12:55 by ADMIN
Created by: Manu
Comments: 1
Category: UI for Blazor
Type: Feature Request
2
Toast component to show notification
Duplicated
Last Updated: 27 May 2024 11:36 by ADMIN
Created by: Christian
Comments: 0
Category: UI for Blazor
Type: Feature Request
2

Please consider adding to Blazor UI a drop-down treeview component with:

  • multiple selections via checkboxes
  • expand/collapse
  • lazy loading on expand
  • tag mode

Example:

Blazor Dropdown Tree with checkboxes.

Thank you

Unplanned
Last Updated: 13 Aug 2020 13:49 by ADMIN
Created by: JeffSM
Comments: 1
Category: UI for Blazor
Type: Feature Request
2
Having a component that is an equivalent of the RadPanorama (https://docs.telerik.com/devtools/winforms/controls/panorama/overview) would be nice to have in UI for Blazor. 
Duplicated
Last Updated: 02 Mar 2020 12:54 by ADMIN
Created by: Manu
Comments: 1
Category: UI for Blazor
Type: Feature Request
2
Accordion control
Unplanned
Last Updated: 08 May 2024 08:40 by ADMIN
Created by: Thomas
Comments: 0
Category: UI for Blazor
Type: Feature Request
2

Hello,

We use extensively the features of Telerik WPF RadMap and are now migrating to Blazor. So we are trying to use TelerikMap to cover our needs.

TelerikMap doesn't support WMS (most important) and vector tile (nice to have) layers.

Implementing them directly is not really important but having some class available for us to override to implement our way could be enough.

In Telerik WPF RadMap, we had TiledProvider and TiledMapSource from which we made our own implementations to cover our needs (WMS with specific parameters mostly), we override the method GetTile and from here we can do whatever we want.

It would be nice to have the same system in Blazor

Thanks

Thomas

Completed
Last Updated: 18 Nov 2022 10:25 by ADMIN
Created by: Datafyer
Comments: 3
Category: UI for Blazor
Type: Feature Request
2

It would be helpful in some cases to specify which grid lines to display with a default of both:

None - No lines

Horizontal - Only horizontal row lines

Vertical - Only vertical column lines.

Both - H/V lines

Need More Info
Last Updated: 03 Apr 2024 10:06 by ADMIN
Created by: Eric
Comments: 1
Category: UI for Blazor
Type: Feature Request
2

The current privot grid is a good start, but it is missing some key features.

  1. Being able to resize columns
  2. Have custom column and row header/footers
  3. Export to excel

 

Need More Info
Last Updated: 04 Oct 2022 11:31 by ADMIN
Created by: Shawn
Comments: 1
Category: UI for Blazor
Type: Bug Report
2

After upgrading to Telerik Version 3.6.1 my CSS is messed up on my grids, the pagers look like the image below.

 

Unplanned
Last Updated: 12 Mar 2020 16:40 by ADMIN
Created by: Danilo
Comments: 0
Category: UI for Blazor
Type: Feature Request
2
I would like to render a title attribute for the icons.
Duplicated
Last Updated: 17 Mar 2020 18:43 by ADMIN

Hi,

the Blazor form controls like DropDownList & ComboBox have a fixed width of 300px (why ???).

This does not respect the Boostrap 4 style guidelines and in a <form> looks like:

where the "Currency" field is a standard <select> and "Model Reader Engine" is a <TelerikDropDownList>.

If I try to set the "Width" attribute of the DropDownList to "100%" the result is:

 

but if I try to open the DropDown the element list is large as the entire screen:

 

Have you planned a fix for this ?

 

Thanks in advance

 

 

 

Duplicated
Last Updated: 02 Mar 2020 13:19 by ADMIN
Created by: Amanatios Amanatidis
Comments: 1
Category: UI for Blazor
Type: Feature Request
2

How can I show/hide or enable/disable a GridCommandColumn (e.g. Edit) per row.
For example, if a row is readonly, I don't want users to be able to click the edit button. There is no @context inside <GridCommandColumn>

 

Sample usage

<GridCommandColumn> @{ var item = context as TheItem;

         <GridCommandButton Command="Edit" Icon="edit" Enabled="@!item.ReadOnly">Edit</GridCommandButton>
     }

</GridCommandColumn>

 

Declined
Last Updated: 04 Aug 2023 05:52 by ADMIN

While using Safari browser, I am getting following exception message:

 

SyntaxError: Unexpected private name #a. Cannot parse class method with private name.
blazor.webassembly.js:1:35655crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Could not find 'TelerikBlazor.getLocationHost' ('TelerikBlazor' was undefined).
      https://mywebsite.com/_framework/blazor.webassembly.js:1:337
      forEach@[native code]
      findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
      https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
      Promise@[native code]
      beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
      St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
      _mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
      wasm-stub@[wasm code]
      <?>.wasm-function[219]@[wasm code]
      <?>.wasm-function[167]@[wasm code]
      <?>.wasm-function[166]@[wasm code]
      <?>.wasm-function[2815]@[wasm code]
      <?>.wasm-function[1619]@[wasm code]
      <?>.wasm-function[1623]@[wasm code]
      <?>.wasm-function[118]@[wasm code]
      wasm-stub@[wasm code]
      118@[native code]
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
      managed_BINDINGS_SetTaskSourceResult
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
      promiseReactionJob@[native code]
Microsoft.JSInterop.JSException: Could not find 'TelerikBlazor.getLocationHost' ('TelerikBlazor' was undefined).
https://mywebsite.com/_framework/blazor.webassembly.js:1:337
forEach@[native code]
findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
Promise@[native code]
beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
_mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
wasm-stub@[wasm code]
<?>.wasm-function[219]@[wasm code]
<?>.wasm-function[167]@[wasm code]
<?>.wasm-function[166]@[wasm code]
<?>.wasm-function[2815]@[wasm code]
<?>.wasm-function[1619]@[wasm code]
<?>.wasm-function[1623]@[wasm code]
<?>.wasm-function[118]@[wasm code]
wasm-stub@[wasm code]
118@[native code]
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
managed_BINDINGS_SetTaskSourceResult
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
promiseReactionJob@[native code]
   at Microsoft.JSInterop.JSRuntime.<InvokeAsync>d__16`1[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
   at Telerik.Blazor.Components.Dialog.DialogBuilder.OnAfterRenderAsync(Boolean firstRender)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task , ComponentState )
5blazor.webassembly.js:1:35655crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Could not find 'TelerikBlazor.initMediaQuery' ('TelerikBlazor' was undefined).
      https://mywebsite.com/_framework/blazor.webassembly.js:1:337
      forEach@[native code]
      findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
      https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
      Promise@[native code]
      beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
      St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
      _mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
      wasm-stub@[wasm code]
      <?>.wasm-function[219]@[wasm code]
      <?>.wasm-function[167]@[wasm code]
      <?>.wasm-function[166]@[wasm code]
      <?>.wasm-function[2815]@[wasm code]
      <?>.wasm-function[1619]@[wasm code]
      <?>.wasm-function[1623]@[wasm code]
      <?>.wasm-function[118]@[wasm code]
      wasm-stub@[wasm code]
      118@[native code]
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
      managed_BINDINGS_SetTaskSourceResult
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
      promiseReactionJob@[native code]
Microsoft.JSInterop.JSException: Could not find 'TelerikBlazor.initMediaQuery' ('TelerikBlazor' was undefined).
https://mywebsite.com/_framework/blazor.webassembly.js:1:337
forEach@[native code]
findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
Promise@[native code]
beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
_mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
wasm-stub@[wasm code]
<?>.wasm-function[219]@[wasm code]
<?>.wasm-function[167]@[wasm code]
<?>.wasm-function[166]@[wasm code]
<?>.wasm-function[2815]@[wasm code]
<?>.wasm-function[1619]@[wasm code]
<?>.wasm-function[1623]@[wasm code]
<?>.wasm-function[118]@[wasm code]
wasm-stub@[wasm code]
118@[native code]
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
managed_BINDINGS_SetTaskSourceResult
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
promiseReactionJob@[native code]
   at Microsoft.JSInterop.JSRuntime.<InvokeAsync>d__16`1[[System.Boolean, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
   at Telerik.Blazor.Components.TelerikMediaQuery.InitMediaQueryWidget()
   at Telerik.Blazor.Components.TelerikMediaQuery.OnAfterRenderAsync(Boolean firstRender)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task , ComponentState )
blazor.webassembly.js:1:35655crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Could not find 'TelerikBlazor.initDrawer' ('TelerikBlazor' was undefined).
      https://mywebsite.com/_framework/blazor.webassembly.js:1:337
      forEach@[native code]
      findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
      https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
      Promise@[native code]
      beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
      St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
      _mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
      wasm-stub@[wasm code]
      <?>.wasm-function[219]@[wasm code]
      <?>.wasm-function[167]@[wasm code]
      <?>.wasm-function[166]@[wasm code]
      <?>.wasm-function[2815]@[wasm code]
      <?>.wasm-function[1619]@[wasm code]
      <?>.wasm-function[1623]@[wasm code]
      <?>.wasm-function[118]@[wasm code]
      wasm-stub@[wasm code]
      118@[native code]
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
      managed_BINDINGS_SetTaskSourceResult
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
      promiseReactionJob@[native code]
Microsoft.JSInterop.JSException: Could not find 'TelerikBlazor.initDrawer' ('TelerikBlazor' was undefined).
https://mywebsite.com/_framework/blazor.webassembly.js:1:337
forEach@[native code]
findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
Promise@[native code]
beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
_mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
wasm-stub@[wasm code]
<?>.wasm-function[219]@[wasm code]
<?>.wasm-function[167]@[wasm code]
<?>.wasm-function[166]@[wasm code]
<?>.wasm-function[2815]@[wasm code]
<?>.wasm-function[1619]@[wasm code]
<?>.wasm-function[1623]@[wasm code]
<?>.wasm-function[118]@[wasm code]
wasm-stub@[wasm code]
118@[native code]
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
managed_BINDINGS_SetTaskSourceResult
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
promiseReactionJob@[native code]
   at Microsoft.JSInterop.JSRuntime.<InvokeAsync>d__16`1[[System.Object, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
   at Telerik.Blazor.Components.TelerikDrawer`1.<InitDrawer>d__131[[eDubaiTaaruf2022.Shared.MenuItemModel, eDubaiTaaruf2022.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
   at Telerik.Blazor.Components.TelerikDrawer`1.<OnAfterRenderAsync>d__121[[eDubaiTaaruf2022.Shared.MenuItemModel, eDubaiTaaruf2022.Shared, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task , ComponentState )
6blazor.webassembly.js:1:35655crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
      Unhandled exception rendering component: Could not find 'TelerikBlazor.initMediaQuery' ('TelerikBlazor' was undefined).
      https://mywebsite.com/_framework/blazor.webassembly.js:1:337
      forEach@[native code]
      findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
      https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
      Promise@[native code]
      beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
      St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
      _mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
      wasm-stub@[wasm code]
      <?>.wasm-function[219]@[wasm code]
      <?>.wasm-function[167]@[wasm code]
      <?>.wasm-function[166]@[wasm code]
      <?>.wasm-function[2815]@[wasm code]
      <?>.wasm-function[1619]@[wasm code]
      <?>.wasm-function[1623]@[wasm code]
      <?>.wasm-function[118]@[wasm code]
      wasm-stub@[wasm code]
      118@[native code]
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
      managed_BINDINGS_SetTaskSourceResult
      https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
      promiseReactionJob@[native code]
Microsoft.JSInterop.JSException: Could not find 'TelerikBlazor.initMediaQuery' ('TelerikBlazor' was undefined).
https://mywebsite.com/_framework/blazor.webassembly.js:1:337
forEach@[native code]
findFunction@https://mywebsite.com/_framework/blazor.webassembly.js:1:303
https://mywebsite.com/_framework/blazor.webassembly.js:1:3326
Promise@[native code]
beginInvokeJSFromDotNet@https://mywebsite.com/_framework/blazor.webassembly.js:1:3317
St@https://mywebsite.com/_framework/blazor.webassembly.js:1:59961
_mono_wasm_invoke_js_blazor@https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:195318
wasm-stub@[wasm code]
<?>.wasm-function[219]@[wasm code]
<?>.wasm-function[167]@[wasm code]
<?>.wasm-function[166]@[wasm code]
<?>.wasm-function[2815]@[wasm code]
<?>.wasm-function[1619]@[wasm code]
<?>.wasm-function[1623]@[wasm code]
<?>.wasm-function[118]@[wasm code]
wasm-stub@[wasm code]
118@[native code]
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:219007
managed_BINDINGS_SetTaskSourceResult
https://mywebsite.com/_framework/dotnet.6.0.9.6fcfkep18v.js:1:154658
promiseReactionJob@[native code]
   at Microsoft.JSInterop.JSRuntime.<InvokeAsync>d__16`1[[System.Boolean, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
   at Telerik.Blazor.Components.TelerikMediaQuery.InitMediaQueryWidget()
   at Telerik.Blazor.Components.TelerikMediaQuery.OnAfterRenderAsync(Boolean firstRender)
   at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task , ComponentState )
Duplicated
Last Updated: 08 Feb 2024 08:52 by ADMIN
Created by: Oliver
Comments: 0
Category: UI for Blazor
Type: Bug Report
2

The following code successfully renders the pdf viewer when the edit form is commented out, but when indside the pdf viewer it fails to render and gives the following error:

"Telerik.Blazor.Components.TelerikComboBox`2[Telerik.Blazor.Components.PdfViewer.Models.PdfViewerZoomLevelDescriptor,System.String] requires a value for the 'ValueExpression' ValueExpression is provided automatically when using 'bind-Value'.See more at https://docs.telerik.com/blazor-ui/knowledge-base/requires-valueexpression ."

 

 

@page "/pdfBug" @* <EditForm Model="_fakeContext"> *@ <TelerikPdfViewer Data="@PdfSource" OnDownload="@OnPdfDownload" Height="600px"></TelerikPdfViewer> @* </EditForm> *@ @code { private byte[] PdfSource { get; set; } private async Task OnPdfDownload(PdfViewerDownloadEventArgs args) { args.FileName = "PDF-Viewer-Download"; } protected override void OnInitialized() { PdfSource = Convert.FromBase64String(PdfBase64); base.OnInitialized(); } private const string PdfBase64 = "JVBERi0xLjEKMSAwIG9iajw8L1R5cGUvQ2F0YWxvZy9QYWdlcyAyIDAgUj4+ZW5kb2JqCjIgMCBvYmo8PC9UeXBlL1BhZ2VzL0tpZHNbMyAwIFJdL0NvdW50IDEvTWVkaWFCb3ggWy00MCAtNjQgMjYwIDgwXSA+PmVuZG9iagozIDAgb2JqPDwvVHlwZS9QYWdlL1BhcmVudCAyIDAgUi9SZXNvdXJjZXM8PC9Gb250PDwvRjE8PC9UeXBlL0ZvbnQvU3VidHlwZS9UeXBlMS9CYXNlRm9udC9BcmlhbD4+ID4+ID4+L0NvbnRlbnRzIDQgMCBSPj5lbmRvYmoKNCAwIG9iajw8L0xlbmd0aCA1OT4+CnN0cmVhbQpCVAovRjEgMTggVGYKMCAwIFRkCihUZWxlcmlrIFBkZlZpZXdlciBmb3IgQmxhem9yKSBUagpFVAplbmRzdHJlYW0KZW5kb2JqCnhyZWYKMCA1CjAwMDAwMDAwMDAgNjU1MzUgZgowMDAwMDAwMDIxIDAwMDAwIG4KMDAwMDAwMDA4NiAwMDAwMCBuCjAwMDAwMDAxOTUgMDAwMDAgbgowMDAwMDAwNDkwIDAwMDAwIG4KdHJhaWxlciA8PCAgL1Jvb3QgMSAwIFIgL1NpemUgNSA+PgpzdGFydHhyZWYKNjA5CiUlRU9G"; private FakeContext _fakeContext = new FakeContext() { Name = "Test" }; public class FakeContext { public string Name { get; set; } } }


Duplicated
Last Updated: 02 Mar 2020 13:21 by ADMIN
One Compact UI theme which will be better suited for Complex and Data heavy Apps.
Duplicated
Last Updated: 07 Oct 2022 09:01 by ADMIN
Created by: qw
Comments: 0
Category: UI for Blazor
Type: Feature Request
2
Declined
Last Updated: 24 Apr 2024 08:34 by ADMIN

Horizontal scrolling in the grid works when its width is set to a fixed value (px, rem, etc.). But the h scroll disappear when a percentage is assigned to the width of the grid.

This seems to be a known 'feature' to Telerik:

https://docs.telerik.com/blazor-ui/components/grid/columns/width?_gl=1*78gyue*_ga*MzUzNTU3NTM0LjE2ODU2MTc3Njk.*_ga_9JSNBCSF54*MTcxMjIyMTAxNS44My4xLjE3MTIyMjExMzQuOS4wLjA.*_gcl_au*MTA3OTA1NzUyOS4xNzEwNTE1Njgy&_ga=2.263164300.1038437897.1712221016-353557534.1685617769

A sensible behaviour is to have the horizontal scrolling enabled and at the same time being able to set the grid to percentage width.

Unplanned
Last Updated: 22 Jun 2021 12:34 by ADMIN
Created by: Zachariah
Comments: 2
Category: UI for Blazor
Type: Feature Request
2
I use a 3D Cartesian Chart in my WPF applications. Id like to make a blazor server side version of these applications. Is a 3d cartesian chart in the works?
Completed
Last Updated: 19 May 2020 16:15 by ADMIN
Release 2.14.0
Created by: Kostas
Comments: 1
Category: UI for Blazor
Type: Bug Report
2

Based on the example used in this page (https://docs.telerik.com/blazor-ui/components/grid/editing/incell)

i tried to use a component of my own composed by teleriks components in the editor template

 


@page "/fetchdata"
@using Microsoft.AspNetCore.Authorization
@using Microsoft.AspNetCore.Components.WebAssembly.Authentication
@inject IAccessTokenProvider AuthenticationService
@inject NavigationManager Navigation
@inject WeatherForecastDataSource WeatherForecastDataSource
@using Olympus.Artemis.Shared
@attribute [Authorize]

<h1>Weather forecast</h1>

<p>This component demonstrates fetching data from the server.</p>


<table class="table">
    <thead>
        <tr>
            <th>Date</th>
            <th>Temp. (C)</th>
            <th>Temp. (F)</th>
            <th>Summary</th>
        </tr>
    </thead>
    <tbody>
        <TelerikGrid Data="_data" Height="400px"  
                     Pageable="true" Sortable="true" Groupable="true" EditMode="@GridEditMode.Incell" Navigable="true"
                     FilterMode="Telerik.Blazor.GridFilterMode.FilterRow" @ref="_grid"
                     Resizable="true" Reorderable="true">
            <GridColumns>
                <GridColumn Field=@nameof(TestItem.WeatherForecastID) Title="Position" Width="200px">
                    <Template Context="item">
                        @{

                            var value = ((TestItem)item).WeatherForecastID;
                            var text = data.Where(x => x.ID == value).Select(x => x.Date).FirstOrDefault();

                        }
                        @text
                    </Template>
                    <EditorTemplate>
                        @{
                            currentItem = context as TestItem;
                            <Test2 OnChange="@onChange" DataSource="@this.WeatherForecastDataSource" Value="@currentItem.WeatherForecastID"></Test2>
 
                        }
                    </EditorTemplate>
                </GridColumn>
            </GridColumns>
        </TelerikGrid>


       
    </tbody>

</table>


@code {   
    protected async Task onChange(object o) {
        currentItem.WeatherForecastID =(Guid) o;
        Console.WriteLine("wrwerwe"+currentItem.WeatherForecastID);
        await CloseEditor(currentItem);
    }
    protected async override Task OnParametersSetAsync()
    {
        data =await WeatherForecastDataSource.GetDataAsync();

        await base.OnParametersSetAsync();
    }
    public List<WeatherForecast> data = new List<WeatherForecast>();
    public TestItem currentItem { get; set; }
    TelerikGrid<TestItem> _grid;
    DateTime selectedValue { get; set; } = DateTime.Now;
    private List<TestItem> _data = new List<TestItem>()
    {
            new TestItem { MyDate = DateTime.Today, DateName = "Σημερα" ,WeatherForecastID= new Guid("be4f3a98-5fd3-4972-bc49-1c442cdf87dd") ,ID=Guid.NewGuid()},
            new TestItem { MyDate =DateTime.Today.AddDays(1), DateName = "Αύριο",WeatherForecastID=new Guid("7fac0c25-653b-4606-afef-19f6e27fc57a"),ID=Guid.NewGuid() },
            new TestItem { MyDate =DateTime.Today.AddDays(2), DateName = "Μεθαύριο" ,WeatherForecastID= new Guid("48eb0a12-5971-479a-852d-6383f30e14cb"),ID=Guid.NewGuid()},
            new TestItem { MyDate =DateTime.Today.AddDays(3), DateName = "Αντιμεθαύριο" ,WeatherForecastID= new Guid("113bde91-b0b9-45e0-9d4b-5b280650e042"),ID=Guid.NewGuid()}
    };


    public class TestItem:Olympus.Artemis.Shared.InfoEntities.BaseInfo {
        public Guid WeatherForecastID { get; set; }
        public DateTime MyDate { get; set; }
        public string DateName { get; set; }
        public override bool Equals(object obj)
        {
            if (obj != null && obj is TestItem)
            {
                TestItem curr = obj as TestItem;
                return (ID == curr.ID) && (WeatherForecastID == curr.WeatherForecastID) && (MyDate == curr.MyDate) && (DateName == curr.DateName);
            }
            return false;
        }
    }
    public async Task CloseEditor(TestItem currentItem)
    {
        var state = _grid?.GetState();

        if (currentItem.ID == null && state.InsertedItem != null)
        {
            // insert operation - the item is new
            await CreateHandler(new GridCommandEventArgs()
            {
                Item = state.InsertedItem
            });
        }
        else
        if (currentItem.ID != null && state.EditItem != null)
        {
            Console.WriteLine($"field c {state.EditField}  {typeof(TestItem).GetProperty(state.EditField).GetValue(currentItem)}");
            Console.WriteLine($"field e {state.EditField}  {typeof(TestItem).GetProperty(state.EditField).GetValue(state.EditItem)}");

            // edit operation on an existing item
            await UpdateHandler(new GridCommandEventArgs()
            {
                Item = state.EditItem,
                Field = state.EditField
            });
        }

        state.InsertedItem = state.OriginalEditItem = state.EditItem = default;
        StateHasChanged();
        await Task.Delay(200); // let the grid re-render and close the cell if keyboard navigation is enabled

        await _grid?.SetState(state);
    }
    async Task UpdateHandler(GridCommandEventArgs args)
    {

        string fieldName = args.Field;
        object newVal = args.Value; // you can cast this, if necessary, according to your model
        Console.WriteLine(fieldName);

        TestItem item = (TestItem)args.Item; // you can also use the entire model
        Console.WriteLine(item.ID);

        // perform actual data source operation here through your service

        // if the grid Data is not tied to the service, you may need to update the local view data too
        var index = _data.FindIndex(i => i.ID == item.ID);
        if (index != -1)
        {
            if (!_data[index].Equals(item))
            {
                _data[index] = item;
                Console.WriteLine("Update event is fired for " + args.Field + typeof(TestItem).GetProperty(args.Field).GetValue(item));
                // this copies the entire item, consider altering only the needed field
            }
        }

    }
    async Task CreateHandler(GridCommandEventArgs args)
    {
        TestItem item = (TestItem)args.Item;

        item.ID = Guid.NewGuid();
        _data.Insert(0, item);

        Console.WriteLine("create");
        // perform actual data source operation here through your service
    }


}

 

The test2 component created by me is this one It only includes a telerikdropdown

@using Olympus.Artemis.Shared
<TelerikComboBox Data="@Items" Value="@Value" ValueField="ID" OnChange="@OnChange" TextField="Date">

</TelerikComboBox>
@code {


    [Parameter]
    public EventCallback<Object> OnChange { get; set; }

 

    [Parameter]
    public Guid Value { get; set; }

    [Parameter]

    public DataSource<WeatherForecast> DataSource { get; set; }

    private IEnumerable<WeatherForecast> Items { get; set; } = new List<WeatherForecast>();
    protected async override Task OnInitializedAsync()
    {
        Items = await DataSource.GetDataAsync();

        await base.OnInitializedAsync();
    }


}

But when i try to select something from the dropdown list the grid cel does not close gracefully 

I get this error (the problem is when it executed the line   await _grid?.SetState(state);)

 

blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       Unhandled exception rendering component: Unknown edit type: 0
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       Error: Unknown edit type: 0
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at e.applyEdits (https://localhost:44310/_framework/blazor.webassembly.js:1:15000)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12872)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at interp_exec_method (wasm-function[1126]:0x25a67)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 Microsoft.JSInterop.JSException: Unknown edit type: 0
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 Error: Unknown edit type: 0
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at e.applyEdits (https://localhost:44310/_framework/blazor.webassembly.js:1:15000)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12872)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at interp_exec_method (wasm-function[1126]:0x25a67)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,T2,TResult] (System.String identifier, T0 arg0, T1 arg1, T2 arg2) <0x3038030 + 0x00046> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,TResult] (System.String identifier, T0 arg0, T1 arg1) <0x3037f50 + 0x00014> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer.UpdateDisplayAsync (Microsoft.AspNetCore.Components.RenderTree.RenderBatch& batch) <0x3037e58 + 0x0001e> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue () <0x2de1a68 + 0x000f2> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       Unhandled exception rendering component: Cannot read property 'parentNode' of undefined
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       TypeError: Cannot read property 'parentNode' of undefined
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.e [as removeLogicalChild] (https://localhost:44310/_framework/blazor.webassembly.js:1:6927)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at e.applyEdits (https://localhost:44310/_framework/blazor.webassembly.js:1:13641)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12872)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 Microsoft.JSInterop.JSException: Cannot read property 'parentNode' of undefined
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 TypeError: Cannot read property 'parentNode' of undefined
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.e [as removeLogicalChild] (https://localhost:44310/_framework/blazor.webassembly.js:1:6927)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at e.applyEdits (https://localhost:44310/_framework/blazor.webassembly.js:1:13641)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12872)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,T2,TResult] (System.String identifier, T0 arg0, T1 arg1, T2 arg2) <0x3038030 + 0x00046> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,TResult] (System.String identifier, T0 arg0, T1 arg1) <0x3037f50 + 0x00014> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer.UpdateDisplayAsync (Microsoft.AspNetCore.Components.RenderTree.RenderBatch& batch) <0x3037e58 + 0x0001e> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue () <0x2de1a68 + 0x000f2> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 crit: Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100]
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       Unhandled exception rendering component: No element is currently associated with component 96
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1       Error: No element is currently associated with component 96
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at interp_exec_method (wasm-function[1126]:0x25a67)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1           at interp_runtime_invoke (wasm-function[5660]:0xf937a)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 Microsoft.JSInterop.JSException: No element is currently associated with component 96
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1 Error: No element is currently associated with component 96
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at e.updateComponent (https://localhost:44310/_framework/blazor.webassembly.js:1:12336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.t.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:1704)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at Object.window.Blazor._internal.renderBatch (https://localhost:44310/_framework/blazor.webassembly.js:1:34679)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at _mono_wasm_invoke_js_unmarshalled (https://localhost:44310/_framework/wasm/dotnet.3.2.0-preview5.20216.1.js:1:166495)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at wasm_invoke_iiiiii (wasm-function[3166]:0x9d336)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at icall_trampoline_dispatch (wasm-function[5782]:0x1006fa)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at mono_wasm_interp_to_native_trampoline (wasm-function[4612]:0xcc80e)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at ves_pinvoke_method (wasm-function[3215]:0x9ed39)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at interp_exec_method (wasm-function[1126]:0x25a67)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1     at interp_runtime_invoke (wasm-function[5660]:0xf937a)
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,T2,TResult] (System.String identifier, T0 arg0, T1 arg1, T2 arg2) <0x3038030 + 0x00046> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.JSInterop.WebAssembly.WebAssemblyJSRuntime.InvokeUnmarshalled[T0,T1,TResult] (System.String identifier, T0 arg0, T1 arg1) <0x3037f50 + 0x00014> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer.UpdateDisplayAsync (Microsoft.AspNetCore.Components.RenderTree.RenderBatch& batch) <0x3037e58 + 0x0001e> in <filename unknown>:0 
p.printErr @ blazor.webassembly.js:1
blazor.webassembly.js:1   at Microsoft.AspNetCore.Components.RenderTree.Renderer.ProcessRenderQueue () <0x2de1a68 + 0x000f2> in <filename unknown>:0 

 

The test control is a simplified version of a more complex control i was trying to create (mutlicolumn combobox)

If I instead use the telerikdropdown in editortemplate everything works ok