Declined
Last Updated: 23 Jul 2021 15:00 by ADMIN
Then setting the TextAlign property of a GridColumn element to ColumnTextAlign.Right, the grid cells are right-aligned, however the header and total row do not respect the setting and remain left-aligned.
Declined
Last Updated: 17 Jul 2021 14:24 by ADMIN

Hi !,

 

I just installed and started to use Telerik Blazor , all controls are working fine but when trying to use the Dialog Component, after adding the cascading parameter in the code section i getting the following error :

Dialog compoentn error

 

https://ibb.co/48wNznW

Thank you for your support.

 

Regards,

Alberto

 

Declined
Last Updated: 17 Jul 2021 10:29 by ADMIN
Created by: Matt
Comments: 6
Category: UI for Blazor
Type: Feature Request
0

I wasn't sure if I should report this as a bug or not. With a modal window, you can tab beyond the modal window into the URL, and then continue on into the page behind the modal window itself. I was able to recreate this on the Modal demo, and fire a search, even though I couldn't click to get there. As I saw in another post that it is essentially a viewport modal (https://feedback.telerik.com/blazor/1510450-prevent-the-user-from-dragging-a-window-out-of-the-viewport), would it be possible to force modal to be system modal, as was available back in the ancient Winforms days?

---

ADMIN EDIT

That's how a web page behaves. Code in a web page cannot and should not prevent the user from using their OS. The browser chrome (address bar, buttons and so on) are part of the OS, and as such are beyond the sandbox of the web app. The web app is limited to the viewport, it cannot go out of it, or interact or control elements outside of it. Anything else would be a severe security issue.

A system-wide modal dialog is only possible though a native application, but not in a web application.

---

Declined
Last Updated: 14 Jul 2021 09:52 by ADMIN
Created by: Philip
Comments: 3
Category: ListView
Type: Feature Request
0

Hello

 

Would be great to have a virtualization option on the ListView component, as paging is already supported.

 

Then we can achieve the "google images" type infinite scrolling without killing performance by loading all without paging...

 

Below example where we want users to be able to infinitely scroll through images based on keywords;

 

Declined
Last Updated: 14 Jul 2021 09:47 by ADMIN

Hi team,

I just upgraded Blazor version to 2.25 and the primary button in FooterTemplate of MultiSelect started behaving differently. This was shown correctly prior to update. Also, normal button where Primary="true" is shown with correct styling.

I have written a little code snippet to demonstrate.


            <div class="row">
                <div class="col-2">
                    <TelerikButton ButtonType="Telerik.Blazor.ButtonType.Button"
                                   Icon="k-icon k-i-add"
                                   Primary="true">
                        New Value
                    </TelerikButton>
                </div>

                <div class="col-10">
                    <TelerikMultiSelect Data="@(
                                            new List<SelectListItem>()
                                            {
                                                { new SelectListItem { Text = "Text 1", Value = "Value1" } },
                                                { new SelectListItem { Text = "Text 2", Value = "Value2" } },
                                                { new SelectListItem { Text = "Text 3", Value = "Value3" } },
                                                { new SelectListItem { Text = "Text 4", Value = "Value4" } }
                                            })"
                                        FilterOperator="StringFilterOperator.Contains"
                                        Filterable="true"
                                        TItem="SelectListItem"
                                        TValue="string"
                                        TextField="Text"
                                        ValueField="Value">
                        <FooterTemplate>
                            <TelerikButton ButtonType="Telerik.Blazor.ButtonType.Button"
                                           Icon="k-icon k-i-add"
                                           Primary="true">
                                New Value
                            </TelerikButton>
                        </FooterTemplate>
                    </TelerikMultiSelect>
                </div>
            </div>

 

As it can be seen the the code for button is exactly same in both places but the output is different.

Please have a look into this.

Many thanks,

 

 

Declined
Last Updated: 16 Jun 2021 15:36 by Robert
Created by: Robert
Comments: 4
Category: DropDownList
Type: Feature Request
1

The DropDownList component is too basic to be used in complex environments. In the real world, no one is binding DropDownLists to List<string>, they are binding to complex datatypes, and the ability to do so has been present in MVC apps for a long time.

Given the following code, it is possible to bind to a List<object>, and two-way bind to the object that was selected.

	<select @onchange="@OnChangedAsync">
		<option></option>
		@if (DataSource != null)
		{
			@foreach (var item in DataSource)
			{
				<option @key="item" value="@optionValueFunc(item)" selected="@(item.Equals(SelectedItem))">@optionTextFunc(item)</option>
			}
		}
	</select>
	#region Private Members

	private Func<TSource, object> optionTextFunc;
	private Func<TSource, object> optionValueFunc;
	private TSource selectedItem = default(TSource);

	#endregion

        #region Public Parameters

	/// <summary>
	/// A List of objects to bind against.
	/// </summary>
	[Parameter]
	public IList<TSource> DataSource { get; set; } = new List<TSource>();

	/// <summary>
        /// A lambda expression referencing the property containing the text to display to the end user. Example: @(c => c.DisplayName)
        /// </summary>
        [Parameter]
        public Expression<Func<TSource, object>> OptionText { get; set; }

	/// <summary>
        /// A lambda expression referencing the property containing the value for this object, usually an identifier. Example: @(c => c.Id)
        /// </summary>
        [Parameter]
        public Expression<Func<TSource, object>> OptionValue { get; set; }

	/// <summary>
        /// The item from the <see cref="DataSource" /> that has been selected.
        /// </summary>
        [Parameter]
        public TSource SelectedItem { get; set; }

	/// <summary>
	/// The callback event required for two-way binding.
	/// </summary>
	[Parameter]
        public EventCallback<TSource> SelectedItemChanged { get; set; }

        #endregion

	private async Task OnChangedAsync(ChangeEventArgs changeEventArgs)
        {
            await UpdateSelection(DataSource.FirstOrDefault(c => optionValueFunc(c).ToString() == changeEventArgs.Value.ToString()));
        }

	private async Task UpdateSelection(TSource item)
        {
            selectedItem = item;
            await SelectedItemChanged.InvokeAsync(selectedItem);
        }

	protected override async Task OnInitializedAsync()
	{
            if (optionTextFunc == null && OptionText != null)
            {
                optionTextFunc = OptionText.Compile();
            }
            if (optionValueFunc == null && OptionText != null)
            {
                optionValueFunc = OptionValue.Compile();
            }
            await Task.CompletedTask;          
        }

Would really appreciate it if you would consider adding this to the next release.

Declined
Last Updated: 13 Jun 2021 10:19 by ADMIN
Created by: Oleg
Comments: 2
Category: Charts
Type: Feature Request
2

It would be nice to be able to use Html markup in the ChartCategoryAxisLabel. 

I can see in the documentation that it currently doesn't support this. I am curious if it is possible. Thank you.

Declined
Last Updated: 27 May 2021 16:39 by Irina
Created by: Irina
Comments: 3
Category: Grid
Type: Feature Request
0

Hi,

Is it possible to drag grid row to another page on the same grid? 

thanks,
Irina

Declined
Last Updated: 17 May 2021 06:04 by ADMIN
Created by: Lance
Comments: 3
Category: UI for Blazor
Type: Bug Report
0

Hi,

I have a grid, it has quite a few columns - maybe 10-15, and this is causing 2 problems which are kind of related.

First problem is it tries to squash them all onto the screen making them all narrow and that hides the header text - I have played with horizontal scrollbar but so far I've only managed to resize them after it loads (or to workaround that I have tried save state after I've resized them with some success, but i'd really prefer the default starting point to be wider than the screen - if you have an example you can show me how to do this?)

Next problem is when I add a filter row to it - its basically unusable.  Even though the columns are narrow, they look like they should be wide enough, but instead what happens is the filter button appears in the middle by itself and nothing else appears - sometimes I see " ___ Y      "  but most of the time its "        Y         ".  It seems very poor use of space by default.  This is the material theme. 

Can you help?  I did try with the filter menu but it is more complicated for our users and they prefer the idea of filterrow, plus it also crashes intermittently (see below for callstack).

 

Intermittent crash in filter menu - happens when user clicks the menu then clicks filter, before the filter menu is displayed.
Error: System.NullReferenceException: Object reference not set to an instance of an object.
   at Telerik.Blazor.Components.Common.Filters.FilterList.TelerikFilterList.GetFilterOperators()
   at Telerik.Blazor.Components.Common.Filters.FilterList.TelerikFilterList.InitFilterOperators()
   at Telerik.Blazor.Components.Common.Filters.FilterList.TelerikFilterList.OnInitializedAsync()
   at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
Declined
Last Updated: 04 May 2021 18:33 by ADMIN

The new functionality to have the in-cell editing validate based on the model doesn't work with fluid validation. We use a custom component that integrates fluid validation with blazor which works fine for all controls including telerik input controls, but the built in validation for the grid editing doesn't seem to work with it.

Also there seems to be a bug with the validation using standard attribute validation. If the row you are working on has an existing record that does not validation properly, the in-cell editing will stop working once you go in to any cell and make a change. The edit mode on that cell will close as if everything updated ok, but after that, you will not be able to click into any cell to edit. While normally the data should already be valid, there can be scenarios where new validation rules are applied and existing records would become retroactively invalid.

 

Thanks,

Alan

 

Declined
Last Updated: 04 May 2021 14:11 by Ron Barone
Created by: Ron Barone
Comments: 3
Category: UI for Blazor
Type: Feature Request
0

It would be really cool to be able to edit documents much like the WPF syntax editor.

Our use case is that we use blazor for our admin tools and we need to give a better look and feel (color coding) to some stored SQL and XML.  Nothing fancy just a better experience.

 

Declined
Last Updated: 04 May 2021 08:27 by ADMIN
Created by: Lark
Comments: 3
Category: Grid
Type: Bug Report
0

I am having problems with grouping in TelerikGrid.

When I drag the column into the header for grouping, I get an error ArgumentNullException: Value cannot be null, apparently,  somewhere in TelerikGrid.SetProcessedGroups.

Test code:
@page "/test"

<div>
    <TelerikGrid @ref="grid" Data="@GridData" @bind-Page="Page" PageSize="PageSize"
                 Pageable="true" Sortable="true" Groupable="true"
                 FilterMode="Telerik.Blazor.GridFilterMode.FilterMenu" 
                 ShowColumnMenu="true"
                 TotalCount="@TotalRowCount"
                 SelectionMode="GridSelectionMode.Single"
                 OnRead=@ReadData>
        <GridAggregates>
            <GridAggregate Field=@nameof(TestData.Name) Aggregate="@GridAggregateType.Count" />
            <GridAggregate Field=@nameof(TestData.Surname) Aggregate="@GridAggregateType.Count" />
            <GridAggregate Field=@nameof(TestData.Department) Aggregate="@GridAggregateType.Count" />
        </GridAggregates>
        <GridColumns>
            <GridColumn Field="@(nameof(TestData.Name))" FieldType="typeof(string)" Editable="false" Groupable="true" ShowColumnMenu="false" />
            <GridColumn Field="@(nameof(TestData.Surname))" FieldType="typeof(string)" Editable="false" Groupable="true" ShowColumnMenu="false" />
            <GridColumn Field="@(nameof(TestData.Department))" FieldType="typeof(string)" Editable="false" Groupable="true" ShowColumnMenu="false" />
            <GridCommandColumn Width="60px" Lockable="false" ShowColumnMenu="true">
                <GridCommandButton Command="View" Icon="information" ShowInEdit="false" OnClick="@ViewItem"></GridCommandButton>
            </GridCommandColumn>
        </GridColumns>
    </TelerikGrid>
</div>


@code {

    protected TelerikGrid<TestData> grid;
    protected List<TestData> GridData { get; set; }
    public int TotalRowCount { get; set; } = 0;
    public int Page { get; set; } = 1;
    public int PageSize { get; set; } = 10;

    protected async Task ReadData(GridReadEventArgs args)
    {
        await LoadData();
    }

    protected async Task LoadData()
    {
        GridData = await GetSampleData();
        TotalRowCount = 100;
    }

    protected async Task<List<TestData>> GetSampleData()
    {
        List<TestData> results = new List<TestData>();

        results.Add(new TestData { Name = "Name1", Surname = "Surname1", Department = "Department1" });
        results.Add(new TestData { Name = "Name2", Surname = "Surname2", Department = "Department1" });
        results.Add(new TestData { Name = "Name3", Surname = "Surname3", Department = "Department1" });
        results.Add(new TestData { Name = "Name4", Surname = "Surname4", Department = "Department1" });
        results.Add(new TestData { Name = "Name5", Surname = "Surname5", Department = "Department2" });
        results.Add(new TestData { Name = "Name6", Surname = "Surname6", Department = "Department2" });
        results.Add(new TestData { Name = "Name7", Surname = "Surname7", Department = "Department2" });
        results.Add(new TestData { Name = "Name8", Surname = "Surname8", Department = "Department3" });
        results.Add(new TestData { Name = "Name9", Surname = "Surname9", Department = "Department3" });
        results.Add(new TestData { Name = "Name10", Surname = "Surname10", Department = "Department4" });

        await Task.Delay(1000); //simulate loading delay ...

        return results;
    }

    protected void ViewItem(GridCommandEventArgs args)
    {
        //navigate to edit view ...
    }

    public class TestData
    {
        public string Name { get; set; }
        public string Surname { get; set; }
        public string Department { get; set; }
    }
}

I am getting the following error:

 

This happens in Chrome and Edge, in Webassembly and Server-side blazor.

Am I doing something wrong?

 

Thanks for the help!

Declined
Last Updated: 04 May 2021 05:11 by ADMIN
Created by: Tamas
Comments: 1
Category: Splitter
Type: Feature Request
1
Currently only pixel and percentage values are available in SplitterPane Size, Min, Max attributes. Please enable other CSS length values, such as em, rem etc.
Declined
Last Updated: 27 Apr 2021 12:13 by ADMIN

Issue - While restoring the tree list state from local storage any items that were expanded are not re-expanded

Repo - https://github.com/benhysell/BlazorGridPagingIssue

Example Inspired By - https://docs.telerik.com/blazor-ui/components/treelist/state#save-and-load-treelist-state-from-browser-localstorage

Steps to Reproduce

Expected behavior - Elements that had been expanded would be expanded again.

Details

Following the example https://docs.telerik.com/blazor-ui/components/treelist/state#save-and-load-treelist-state-from-browser-localstorage I copied the code into my application, however I wanted to save which items were expanded, so I commented out:

 state.ExpandedItems = null;

Looking at the resulting entries in local storage, it appears the ExpandedItems list is properly saved to local storage.

I added some logging to the OnStateInitHandler so I could see what was happening on load, my desired result was to ensure:

  • If there is nothing in local storage, collapse all items
  • If someone had stored some information in local storage use it

It appears everything is going out to local storage, and coming back in without issue, however the state of the expanded items is not reflected in the control.

 

Declined
Last Updated: 23 Apr 2021 07:43 by ADMIN
Created by: Marc Simkin
Comments: 1
Category: UI for Blazor
Type: Bug Report
0

The attributes that the Telerik Input components, FormItem, and FormGroup should all be consistent in the attributes that are supported.  For example, the TelerikSlider component doesn't support an Id property.  The FormGroup component doesn't support a Class property.

If I place the Slider inside a FormItem Template and provide my own label. I can't associate the label with the Slider since there is no Id property.

Also, if I am using a FormGroup to make sure that two input controls are shown horizontally install of vertically, I can't override the gray horizontal rule that shows with the group, especially when I am not providing LabelText.  I don't want to override this at the TelerikForm as I would like the default behavior in specific instances.

The attached screen shot highlights the issue.  Here is the razor component markup.  Note: Replace the custom RecSetSelector component with a dropdownlist.


@{
    var model = ViewModel.Model;
}

<TelerikForm EditContext="@EditContext"
             Columns="2"
             ColumnSpacing="20px"
             Orientation="FormOrientation.Vertical"
             OnValidSubmit="OnValidSubmit">
    <FormValidation>
        <FluentValidationValidator />
    </FormValidation>
    <FormItems>
        <FormGroup LabelText="Set options">
            <FormItem>
                <Template>
                    <label class="k-label k-form-label" for="setName">Set Name</label>
                    <TelerikTextBox Id="setName" @bind-Value="@model.SetName"></TelerikTextBox>
                </Template>
            </FormItem>
            <FormItem>
                <Template>
                    <TelerikDateRangePicker @bind-StartValue="@model.StartDate"
                                            @bind-EndValue="@model.EndDate"
                                            Min="@ViewModel.MinStartDate"
                                            StartId="startDate"
                                            EndId="endDate"
                                            DisabledDates="@ViewModel.DisabledDates">
                    </TelerikDateRangePicker>
                </Template>
            </FormItem>
            <FormGroup Columns="2">
                <FormItem>
                    <Template>
                        <label class="k-label k-form-label" for="allowAutoFill">Allow Auto Fill</label>
                        <TelerikCheckBox Id="allowAutoFill" @bind-Value="@model.AllowAutoFill"></TelerikCheckBox>
                    </Template>
                </FormItem>
                <FormItem Field="@nameof(model.RequiredRecsToExpire)">
                    <Template>
                        <label class="k-label k-form-label">Required Recs to Expire</label>
                        <TelerikSlider @bind-Value="@model.RequiredRecsToExpire"
                                       Min="0"
                                       Max="20"
                                       SmallStep="1"
                                       LargeStep="5"
                                       ShowButtons="false"/>
                    </Template>
                </FormItem>
            </FormGroup>
        </FormGroup>
        <FormGroup LabelText="Initial starting point">
            <FormItem LabelText="existingSets">
                <Template>
                    <label class="k-label k-form-label" for="existingSets">From existing recommendation sets:</label>
                    <RecSetSelector AvailableSets="@ViewModel.AvailableSets"
                                    IsNew="true"
                                    SelectedSetId="@ViewModel.SelectedSetId"
                                    OnSetSelected="@OnSetSelected" />
                </Template>
            </FormItem>
            <FormItem>
                <Template>
                    <label class="k-label k-form-label" for="eanList">From a list of EANs:</label>
                    <TelerikTextArea Id="eanList"
                                     @bind-Value="@ViewModel.EanList"
                                     AutoSize="true">
                    </TelerikTextArea>
                </Template>
            </FormItem>
        </FormGroup>
        <FormItem ColSpan="2" Field="@nameof(model.Comment)">
            <Template>
                <TelerikTextArea Id="comment"
                                 @bind-Value="@model.Comment"
                                 AutoSize="true">

                </TelerikTextArea>
            </Template>
        </FormItem>
        <ValidationSummary />
    </FormItems>
    <FormButtons>
        <div class="justify-content-end">
            <TelerikButton ButtonType="ButtonType.Button" OnClick="OnCancel">Cancel</TelerikButton>
            <TelerikButton ButtonType="ButtonType.Submit" Primary="true">Save</TelerikButton>
        </div>
    </FormButtons>
</TelerikForm>

Declined
Last Updated: 23 Apr 2021 07:19 by ADMIN
Created by: Marc Simkin
Comments: 1
Category: DatePicker
Type: Feature Request
0

Currently, when dates need to be disable in the DatePicker and DateRangePicker, a collection of induvial dates are provided.  As a result, when I need to disable a 90 day or 180 day continuous range I need to add to the collection 90 or 180 day individual DateTime objects.

It would be more efficient to provide a range of dates to disable instead of induvial dates.

The DisabledDates should accept a collection of DisableDateItems that is similar to the below:

public class DisableDateItem
{
     public DateTime RangeBegin { get; set; }
     public DateTime RangeEnd { get; set; }
}

Using this collection I can disable an individual date by having the RangeBegin and RangeEnd dates be the same, as shown below:

var bankHoliday = new DisableDateTime
{
       RangeBegin = new DateTime(2021, 09, 01),
       RangeEnd = new DateTime(2021, 09, 01)
};


To disable a date range, for example the Eastern Good Friday Weekend, I would provide a DisableDateTime as:

var bankHoliday = new DisableDateTime
{
       RangeBegin = new DateTime(2021, 04, 30),
       RangeEnd = new DateTime(2021, 05, 02)
};

To disable a 90 day range, I would provide a DisableDateTime object as:

var bankHoliday = new DisableDateTime
{
       RangeBegin = new DateTime(2021, 05, 01),
       RangeEnd = new DateTime(2021, 07, 30)
};
Declined
Last Updated: 22 Apr 2021 18:00 by ADMIN
Created by: Dale
Comments: 1
Category: ListView
Type: Feature Request
0
Is it possible this control could be updated to support item selection? This ability seems to be supported on frameworks like jQuery (Selection in jQuery ListView Widget Demo | Kendo UI for jQuery (telerik.com)) I know the functionality can be added after the fact but it would be nice if the control had better support for this since this is a common use case for this type of control. 
Declined
Last Updated: 22 Apr 2021 17:48 by ADMIN
Created by: Marco
Comments: 3
Category: Grid
Type: Bug Report
0
If virtual scrolling is enabled aggregates work only with current data, e. g. scrolling make total value of a column change
Declined
Last Updated: 16 Apr 2021 11:50 by ADMIN
Created by: tilt32
Comments: 1
Category: ComboBox
Type: Feature Request
0

Hello everyone,

in the web app we are programming, we make heavy use of the TelerikCombobox. Now the use case arises, that the user needs to be able to select a numeric value (double or int, mainly) out of an existing list of values, or if the needed value does not exist yet, provide a custom value.

In this particular case, he selects out of a range of existing article lengths or widths. Most of the time, the length or width is of a "normed" width or length (meaning the normal width / length the article would have) Since they can however produce an article in any width / length they wish to, it does happen sometimes, that the range of existing article widths / lengths is missing the desired value. Hence we thought we could make use of the AllowCustom feature of the TelerikCombobox, so that the user can provide a value themselfes, if need be.

However, the type restriction to string of the Value and Text-Field of the Items makes it rather cumbersome todo so, as a new Model class is needed which has the Text / Value fields as string and internally maps it to the desired type. In addition the user can provide input, which does not make any sense whatsoever for the underlying type.

Would it be possible, for the AllowCustom feature to work also mit numeric values? I.e. When the property the Value-field is referencing to, returns a numeric value, only numeric input is considered (somewhat similar to the NumericTextBox)?

 

Best Regards,

tilt32

Declined
Last Updated: 13 Apr 2021 08:14 by ADMIN
1 2 3 4 5 6