Completed
Last Updated: 14 Nov 2024 09:26 by ADMIN
Release 7.0.0

When filtering or editing a Grid with enum data, the Name property of their Display parameter is respected.

However, in the initial view mode of the Grid the Name property is not applied and the enum values are rendered regardless of whether or not their Display parameter has a Name property defined.

 

==========

ADMIN EDIT

==========

In the meantime, a workaround you might try is to create a custom method to check whether Display attribute is defined and get and display its Name property, otherwise display the Enum's member name.

You can then use a Template for the column that uses enum data, cast its context to the model you are using and invoke the method on the field containing the enum. The sample below demonstrates how you can achieve this.

@using System.ComponentModel.DataAnnotations
@using System.Reflection

<TelerikGrid Data=@MyData EditMode="@GridEditMode.Inline" Pageable="true" Height="500px"
             OnUpdate="@UpdateHandler" FilterMode="@GridFilterMode.FilterRow">
    <GridColumns>
        <GridColumn Field=@nameof(SampleData.ID) Editable="false" Title="ID" />
        <GridColumn Field=@nameof(SampleData.Name) Title="Name" />
        <GridColumn Field=@nameof(SampleData.Role) Title="Position">       
            <Template>
                @{
                    var currentEmployee = context as SampleData;
                    var currentRole = GetDisplayName(currentEmployee.Role);                        
                }

                @currentRole
            </Template>
        </GridColumn>
        <GridCommandColumn>
            <GridCommandButton Command="Save" Icon="save" ShowInEdit="true">Update</GridCommandButton>
            <GridCommandButton Command="Edit" Icon="edit">Edit</GridCommandButton>
        </GridCommandColumn>
    </GridColumns>
</TelerikGrid>

@code {
    //custom method to check whether Display attribute is defined and get and display its Name property, otherwise display the Enum's member name
    public string GetDisplayName(Enum val)
    {
        return val.GetType()
                  .GetMember(val.ToString())
                  .FirstOrDefault()
                  ?.GetCustomAttribute<DisplayAttribute>(false)
                  ?.Name
                  ?? val.ToString();
    }


    public void UpdateHandler(GridCommandEventArgs args)
    {
        SampleData item = (SampleData)args.Item;

        //update the view-model
        var index = MyData.FindIndex(i => i.ID == item.ID);
        if (index != -1)
        {
            MyData[index] = item;
        }

        //perform actual data source operations here
    }

    //model and dummy data generation
    public class SampleData
    {
        public int ID { get; set; }
        public string Name { get; set; }
        public Role Role { get; set; }
    }

    public enum Role
    {
        [Display(Name = "Manager")]
        ManagerRole,
        [Display(Name = "Employee")]
        EmployeeRole,
        [Display(Name = "Contractor")]
        ContractorRole
    }

    public List<SampleData> MyData { get; set; }

    protected override void OnInitialized()
    {
        MyData = new List<SampleData>();

        for (int i = 0; i < 50; i++)
        {
            MyData.Add(new SampleData()
            {
                ID = i,
                Name = "name " + i,
                Role = (Role)(i % 3) // just some sample to populate initial values for the enum
            });
        }
    }
}

Completed
Last Updated: 15 Sep 2022 17:08 by Doug
Release 2.27.0
Created by: Brian
Comments: 5
Category: UI for Blazor
Type: Feature Request
14
Hi I need to do barcode / QR code (mostly QR code) in Blazor.  It is not on the roadmap, so I don't expect it anytime in the next 6 months.  Great support for QR code in Asp.Net Core UI, but I don't think they mix, and I'm writing in pure Blazor.  Suggestions?
Completed
Last Updated: 12 Oct 2022 12:59 by Javier
Release 3.5.0

If the TextArea component is used within an EditorTemplate of a grid column, edit mode is always closed upon hitting ENTER.  The thing is that I'm using the TextArea to allow the user to input several lines.  Upon Enter the user wants to move to a new line within the TextArea and not to finish the edit mode.

Regards,

René

---

ADMIN EDIT

For the time being I can offer using the popup editing or a custom external edit form (inline or popup).

Another workaround would be to stop the keydown event propagation so the grid/treelist cannot consume it and close the cell:

 

        <TreeListColumn Field="EmailAddress" Width="220px">
            <EditorTemplate>
                @{
                    CurrentlyEditedEmployee = context as Employee;
                    <div @onkeydown:stopPropagation="true">
                        <TelerikTextArea @bind-Value="@CurrentlyEditedEmployee.EmailAddress"></TelerikTextArea>
                    </div>
                }
            </EditorTemplate>
        </TreeListColumn>

 

It is possible that the grid might stop handling Enter when editor templates are present so you can use the events from the custom editor as desired to invoke the save operation. This could happen through the following request: https://feedback.telerik.com/blazor/1493770-ability-to-prevent-multiple-calls-of-async-updatehandler-when-pressing-enter-in-incell-edit-mode. With or without it, it is highly likely that the approach of preventing the event propagation is the correct one because the grid cannot know what the editor template contains and handle events differently based on that.

 

---

Completed
Last Updated: 06 Jan 2021 10:00 by ADMIN
Release 2.21.0
Created by: Datafyer
Comments: 0
Category: UI for Blazor
Type: Feature Request
13

In many cases users need to be able to specify a number which is easily visualized using a horizontal slider.
This allows the user to easily move the point to their desired location.

It can be helpful to allow this to also be constrained using a forced range selection.

Unplanned
Last Updated: 23 Oct 2023 14:46 by Thomas
Created by: Rick
Comments: 5
Category: UI for Blazor
Type: Feature Request
13

I have been trying to improve my Lighthouse score with Google and one of the items it is tagging is the "telerik-blazor.js" file.  I have seen new practices where the JavaScript is imported as needed, see this article here from Microsoft.

Can you please consider this in the future?

===

Telerik edit: A possible workaround is to build the Telerik JavaScript file without some of the components that you don't need.

Unplanned
Last Updated: 27 Apr 2021 11:47 by Gabriele
Created by: Kris
Comments: 4
Category: UI for Blazor
Type: Feature Request
13
I would like to be able to drag and drop (to sort) items in my listview, in a fashion similar to this feature planned for the grid. Libraries like Kendo Sortable and Sortable.JS would be nice, but for blazor.
Completed
Last Updated: 12 May 2021 04:56 by ADMIN
Release 2.24.0
Created by: Ben Hayat
Comments: 2
Category: UI for Blazor
Type: Feature Request
13
Card:
A Card component similar to what can be done with Bootstrap. However a pre made Blazor component that we can quickly give it size parameters, shading and etc. to create a card where we can put content in the card.
Completed
Last Updated: 18 Nov 2020 13:37 by ADMIN
Release 2.20.0
Created by: James
Comments: 3
Category: UI for Blazor
Type: Feature Request
13
Please add a toolbar control for Blazor
Unplanned
Last Updated: 18 Jul 2022 17:23 by Robert C
Created by: Michael
Comments: 5
Category: UI for Blazor
Type: Feature Request
12

Hi

Passwords are not yet supported. There is a DataAnotations Datatype for that. So technically this is possible and should not be a big deal. Almost all apps have a password entry somewhere. 

Example:

    class LoginModel
    {
        [Required]
        [Display(Name = "User Name")]
        public string UserName { get; set; }

        [Required]
        [DataType(DataType.Password)]
        [Display(Name = "Password")]
        public string Password { get; set; }
    }

Annoying because then you have to do the form fields all manually because of the password.

Thanks for considering.

Best regards, Michael

 
Unplanned
Last Updated: 09 Feb 2022 17:30 by ADMIN
Created by: Kinga
Comments: 1
Category: UI for Blazor
Type: Feature Request
12

Hi,

is it possible to add control of vertical timeline like this (https://antblazor.com/en-US/components/timeline) with extra features like:

  • adding new items with button on top
  • inline edit
  • item selection
  • item actions

I also attached image of what i build based on control from link above, I would like to implement something similar with Telerik.

Maybe you can recommend some other controls to replace it with?

Thank you :)

Duplicated
Last Updated: 07 Jul 2020 16:06 by ADMIN
Created by: Darryl
Comments: 3
Category: UI for Blazor
Type: Feature Request
11
It would be nice to have a toggle switch available in the UI for Blazor components. The component could support true/false and have customized text for each value.
Unplanned
Last Updated: 04 Jan 2021 08:29 by ADMIN
Created by: Srdjan
Comments: 1
Category: UI for Blazor
Type: Feature Request
11

Greetings!

 

Since the focus events are natively supported by blazor, could they be implemented in the input controls? Workarounds via JS are possible but they create a lot of redundant and cluttered code around the code base. OnChange/ValueChange only fire when the value has changed. Though, we have a lot of scenarios where we need the focus events when a value did not change.

Completed
Last Updated: 19 Sep 2019 06:05 by ADMIN
Created by: Ben Hayat
Comments: 5
Category: UI for Blazor
Type: Feature Request
11
Hello Team;

An important (3 actually) components that we require heavily in our (to make sure we collect data accurately), are a good Date, Time and Date/Time Combo picker.
In any business app, Date/Time can be very crucial piece of data that needs to be collected from user correctly and visually, especially on smaller devices.

Could you please consider these 3 data pickers that can be bound to the model?
Thanks in advance.
..Ben
Duplicated
Last Updated: 24 Jul 2023 07:27 by Mark

Unexpected scroll behaviour is seen after selecting an item in a DropDownList/Multiselect with a scroll mode set to virtualise. We are unable to easily scroll upwards using the scroll bar in the control or using a mouse/trackpad. The scroll position immediately snaps back to the selected item. Sometimes we are able 'escape' this by rapidly scrolling but this does not feel like intended behaviour.

Downward scrolling seems okay and using the keyboard arrow keys also seems unaffected. This is reproducible on the demo page: Blazor DropDownList - Virtualization - Telerik UI for Blazor and https://docs.telerik.com/blazor-ui/components/multiselect/virtualization.

Reproduction steps on Chrome:

  1. Navigate to demo page and render local example preview
  2. Select item "Name 27"
  3. try to scroll up with the arrow buttons on the scrollbar or the mouse wheel

Minimal reproducible example: Blazor MultiSelect - Virtualization - Telerik UI for Blazor

 

Unplanned
Last Updated: 03 Dec 2020 14:56 by ADMIN
Created by: Kostas
Comments: 1
Category: UI for Blazor
Type: Feature Request
10
DropDown TreeList would be one thing that would sky rocketed the component suite.
Declined
Last Updated: 01 Mar 2022 08:48 by ADMIN
Created by: Nick
Comments: 7
Category: UI for Blazor
Type: Feature Request
10
Standard input controls support a readonly attribute. The read only state can be applied in Blazor like this:
    <input class="form-control" readonly="@(!EditMode)" type="text" @bind="@FormField.TextValue"/>

As far as I can tell none of the Telerik input controls support a read only mode. Putting the same attribute on TelerikDropDownList for instance (not surprisingly) results in this:

WASM: System.InvalidOperationException: Object of type 'Telerik.Blazor.Components.DropDownList.TelerikDropDownList`2[[FolioMetrics.Core.Types.Model.PicklistValue, FolioMetrics.Core.Types, Version=1.0.0.0, Culture=neutral, PublicKeyToken=3b4aae723ff25d84],[System.Int32, mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]' does not have a property matching the name 'readonly'.

Can we have all the controls sort a read-only state please?

Unplanned
Last Updated: 18 Jul 2023 07:10 by ADMIN
Currently the TabStrip solution for dynamic tabs is very inefficient, any change to the collection of Tabs (add/remove) would trigger the render of all tabs, even the ones that were already loaded, in scenarios where the Tab content contains complex components with nested components at different levels this is a pain, not only to load components but to load necessary information related to the component. It would be a breeze if we could reuse a component instance instead of creating a new one or only re-render (maybe with ShouldRender) the new added Tab.
Completed
Last Updated: 13 Dec 2022 18:24 by ADMIN

I couldn't find a way to change the default AnimationDuration of the combobox's popup. Personally, I find the default AnimationDuration set at 300ms way too high.

I'd like a way to change it either per-component, by setting animation properties on them when appropriate, or globally, by configuring it in Startup.cs or on TelerikRootComponent perhaps. I've no idea how this should work.

---

ADMIN EDIT

Here is a way to change the animation of the dropdown per component - through the PopupClass (note that the popup class may move to the topmost element of the popup in a future version, if this stops working, inspect the rendering to see where the custom class is and how to cascade through it):

<style>
    .fast-animation.k-popup.k-reset {
        transition-duration: 100ms !important;
    }

    .slow-animation.k-popup.k-reset {
        transition-duration: 1000ms !important;
    }

    .no-animation.k-popup.k-reset {
        transition: none !important;
    }
</style>



<TelerikComboBox PopupClass="fast-animation"
                 Data="@myComboData"
                 TextField="MyTextField"
                 ValueField="MyValueField"
                 @bind-Value="selectedValue"
                 Placeholder="Fast animation"
                 ClearButton="true" Filterable="true">
</TelerikComboBox>

<TelerikDropDownList PopupClass="no-animation"
                     Data="@myComboData"
                     TextField="MyTextField"
                     ValueField="MyValueField"
                     @bind-Value="selectedValue"
                     DefaultText="No Animation">
</TelerikDropDownList>

<TelerikDatePicker PopupClass="slow-animation" @bind-Value="@SelectedDate"></TelerikDatePicker>

@code {

    IEnumerable<MyDdlModel> myComboData = Enumerable.Range(1, 20).Select(x => new MyDdlModel { MyTextField = "item " + x, MyValueField = x });
    DateTime SelectedDate { get; set; } = DateTime.Now;
    int selectedValue { get; set; } 
    public class MyDdlModel
    {
        public int MyValueField { get; set; }
        public string MyTextField { get; set; }
    }
}

Duplicated
Last Updated: 13 Nov 2020 18:59 by ADMIN
Created by: Anders
Comments: 1
Category: UI for Blazor
Type: Feature Request
9

First of all, The team loves the product, and development is going 10x faster with a UI library with so many features.

 

But we're looking for making diagrams inside our application. Something like https://www.syncfusion.com/blazor-components/blazor-diagram

is it a feature currently in the backlog or is it possible to put it there?

That will make us possible to make a flowchart over what assets are connected to each other in our data center

Declined
Last Updated: 20 Mar 2020 17:23 by ADMIN
Created by: Jon
Comments: 7
Category: UI for Blazor
Type: Feature Request
9

The CSS classes used by Blazor UI are not documented. (I haven't looked outside the Blazor area, so maybe it's somewhere else in the docs? My team has no need for other Telerik products.) On a similar note, the Themes page in the documentation explains how to reference alternate themes like Bootstrap, but it doesn't explain how to actually use the classes, or how it integrates with the real Bootstrap CSS, which have many various useful, well-known utilities like margin and padding settings, which don't seem to be part of the Telerik theme support. (I'm an architect at a very large corporation, we do have one of those includes-everything DevCraft licenses, I just can't log in with that account.)