Telerik Forums
UI for Blazor Forum
1 answer
99 views
I want to increase the width of the collapsible column in the telerik nested grid. I’ve tried to do it with CSS and JavaScript, but it hasn't worked. Could someone help me increase the width of this class k-hierarchy-cell?

<TelerikGrid Data="categories" Pageable="true" PageSize="5" Class="custom-nested-grid">
    <DetailTemplate Context="categoryItem">
        @{
            var category = categoryItem as CategoryModel;
            <TelerikGrid Data="category.SubItems" Pageable="true" PageSize="3" Class="nested-grid">
                <DetailTemplate Context="subItem">
                    @{
                        var nestedItem = subItem as SubItemModel;
                        <TelerikGrid Data="nestedItem.NestedItems" Pageable="true" PageSize="3" Class="nested-grid">
                            <DetailTemplate Context="nestedSubItem">
                                @{
                                    // Add a fourth level of nesting here if needed
                                }
                            </DetailTemplate>
                            <GridColumns>
                                <GridColumn Field="Code" Title="Code"></GridColumn>
                                <GridColumn Field="Name" Title="Name"></GridColumn>
                                <GridColumn Field="Description" Title="Description"></GridColumn>
                                <GridColumn Field="ItemType" Title="Item Type"></GridColumn>
                                <GridColumn Field="LinkedCategories" Title="Linked Categories"></GridColumn>
                            </GridColumns>
                        </TelerikGrid>
                    }
                </DetailTemplate>
                <GridColumns>
                    <GridColumn Field="Code" Title="Code"></GridColumn>
                    <GridColumn Field="Name" Title="Name"></GridColumn>
                    <GridColumn Field="Description" Title="Description"></GridColumn>
                    <GridColumn Field="ItemType" Title="Item Type"></GridColumn>
                    <GridColumn Field="LinkedCategories" Title="Linked Categories"></GridColumn>
                </GridColumns>
            </TelerikGrid>
        }
    </DetailTemplate>
    <GridColumns>
        <GridColumn Field="Code" Title="Code"></GridColumn>
        <GridColumn Field="Name" Title="Name"></GridColumn>
        <GridColumn Field="Description" Title="Description"></GridColumn>
        <GridColumn Field="ItemType" Title="Item Type"></GridColumn>
        <GridColumn Field="LinkedCategories" Title="Linked Categories"></GridColumn>
    </GridColumns>
</TelerikGrid>

@code {
    // Sample data model classes
    public class CategoryModel
    {
        public string Code { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public string ItemType { get; set; }
        public string LinkedCategories { get; set; }
        public List<SubItemModel> SubItems { get; set; }
    }

    public class SubItemModel
    {
        public string Code { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public string ItemType { get; set; }
        public string LinkedCategories { get; set; }
        public List<NestedItemModel> NestedItems { get; set; }
    }

    public class NestedItemModel
    {
        public string Code { get; set; }
        public string Name { get; set; }
        public string Description { get; set; }
        public string ItemType { get; set; }
        public string LinkedCategories { get; set; }

        // Add this property to support further nesting
        public List<NestedItemModel> NestedItems { get; set; } = new List<NestedItemModel>();
    }


    private List<CategoryModel> categories = new List<CategoryModel>
{
    new CategoryModel
    {
        Code = "C-1", Name = "Ram Pro Master 2500", Description = "Ambulance parts for ram pro master 2500", ItemType = "Parts", LinkedCategories = "8 Linked categories",
        SubItems = new List<SubItemModel>
        {
            new SubItemModel
            {
                Code = "C-134", Name = "Electronic Control Unit", Description = "Electric parts for ram pro master 3500", ItemType = "-", LinkedCategories = "4 Linked categories",
                NestedItems = new List<NestedItemModel>
                {
                    new NestedItemModel
                    {
                        Code = "N-1", Name = "Subcomponent A", Description = "Details for subcomponent A", ItemType = "Electronic", LinkedCategories = "2 Linked categories",
                        // Next level of data
                        NestedItems = new List<NestedItemModel>
                        {
                            new NestedItemModel { Code = "L-1", Name = "Detail A1", Description = "Details of A1", ItemType = "Part", LinkedCategories = "-",
NestedItems = new List<NestedItemModel>
                        {
                            new NestedItemModel { Code = "L-1", Name = "Detail A1", Description = "Details of A1", ItemType = "Part", LinkedCategories = "-" },
                            new NestedItemModel { Code = "L-2", Name = "Detail A2", Description = "Details of A2", ItemType = "Part", LinkedCategories = "Linked" }
                        }
                            },
                            new NestedItemModel { Code = "L-2", Name = "Detail A2", Description = "Details of A2", ItemType = "Part", LinkedCategories = "Linked" }
                        }
                    },
                    new NestedItemModel
                    {
                        Code = "N-2", Name = "Subcomponent B", Description = "Details for subcomponent B", ItemType = "Electronic", LinkedCategories = "1 Linked category",
                        NestedItems = new List<NestedItemModel>
                        {
                            new NestedItemModel { Code = "L-3", Name = "Detail B1", Description = "Details of B1", ItemType = "Part", LinkedCategories = "-" }
                        }
                    }
                }
            }
        }
    },
    new CategoryModel
    {
        Code = "C-2", Name = "Ram Pro Master 3500", Description = "Electric parts for ram pro master 3500", ItemType = "Parts", LinkedCategories = "5 Linked categories",
        SubItems = new List<SubItemModel>
        {
            new SubItemModel
            {
                Code = "C-672", Name = "Engine Control Unit", Description = "Engine module for control", ItemType = "-", LinkedCategories = "3 Linked categories",
                NestedItems = new List<NestedItemModel>
                {
                    new NestedItemModel
                    {
                        Code = "N-3", Name = "Engine Subcomponent A", Description = "Engine details A", ItemType = "Engine Part", LinkedCategories = "-",
                        NestedItems = new List<NestedItemModel>
                        {
                            new NestedItemModel { Code = "L-4", Name = "Detail C1", Description = "Details of C1", ItemType = "Control Unit", LinkedCategories = "-" },
                            new NestedItemModel { Code = "L-5", Name = "Detail C2", Description = "Details of C2", ItemType = "Control Unit", LinkedCategories = "Linked" }
                        }
                    }
                }
            }
        }
    }
};


    private void ApplyCategory(CategoryModel category)
    {
        Console.WriteLine($"Applying category: {category.Code}");
    }

    private void ApplySubItem(CategoryModel category, SubItemModel subItem)
    {
        Console.WriteLine($"Applying sub-item: {subItem.Code} under category: {category.Code}");
    }
private TelerikGrid<CategoryModel> gridRef;

    protected override async Task OnAfterRenderAsync(bool firstRender)
    {
        if (firstRender)
        {
            await JSRuntime.InvokeVoidAsync("setHierarchyCellWidth", 130); // Set the desired width here
        }
    }
}

<script>
    window.setHierarchyCellWidth = function(width) {
    document.querySelectorAll(".k-hierarchy-cell").forEach(cell => {
        cell.style.width = width + "px";
        cell.style.minWidth = width + "px";
        cell.style.maxWidth = width + "px";
    });
}
</script>

Dimo
Telerik team
 answered on 14 Nov 2024
1 answer
80 views

Is there a way to set the value attribute for a submit button when using the TelerikButton.

For example, this is the button markup I am currently using:


<button type="submit" class="login100-form-btn" name="provider" value="@provider.Name"
									title="Log in using your @provider.DisplayName account">
								<TelerikSvgIcon Icon="@GetExternalIcon(provider.Name)" Size="@ThemeConstants.SvgIcon.Size.ExtraExtraLarge" Class="me-3" />
								Login using @provider.DisplayName
							</button>
I want to convert this to using a TelerikButton but I cannnot figure out how to set the value attribute when doing that.
Nansi
Telerik team
 answered on 13 Nov 2024
1 answer
223 views
I have a column chart with the x-axis representing whole month dates and each data point ranging in value from 0 to 86000. The y-axis now has a default range of 0 to 86000, with intervals of 10,000 each. I need to set the y-axis values to 0, 8000, 9000, 10000, 11000, 12000, 13000, 14000, 15000, 17000, 22000, 26000, 30000, 34000, 43000, 60000, and 86000. There are a total of 16 iterations. Is it possible using TelerikChart in Blazor to adjust the y-axis values as shown above?
Dimo
Telerik team
 answered on 13 Nov 2024
1 answer
268 views
I would like to place a second button on the Grid Toolbar.  That button should reside to the right side of the Toolbar so that the GridCommandButton for Add is on the far left and my second button should be on the far right.  

What is the best/proper way to do this on the Blazor Grid?
Hristian Stefanov
Telerik team
 answered on 13 Nov 2024
1 answer
130 views
 UPD: Found a solution already, there was a bug in my code, everything is working ok, can i somehow delete this question post?
Hristian Stefanov
Telerik team
 answered on 13 Nov 2024
1 answer
265 views

I have a requirement to conditionally disable all controls in a TelerikForm. There a multiple ways to do that but what seems like the easiest to me is to wrap the form as such:

<fieldset disabled>

    <TelerikForm>...

</fieldset>

 

I have buttons, text boxes, date pickers and drop down lists in my form. All of the controls get disabled except for the drop downs. Is there a simple way to do this so the drop downs will get included? I know I could do this through javascript or whatever but it just struck me as weird that most of the Telerik controls are disabled except for the drop downs.

Thanks.

Nansi
Telerik team
 answered on 12 Nov 2024
1 answer
79 views
I am using the teleriktilelayout component.  I have resizing and reordering turned off, but we may have it as a feature in the future.  Since they are turned off, I need the tiles to be taken out of the tab order and not be navigable.  I know that navigable=false is the default, but all the tiles have tabindex=0 (making them tabbable/navigable).  Adding navigable=false to the main component doesn't work (and again, it's supposed to be the default).  

How do I change it to tabindex=-1 on the tiles? Is there any other way to remove the tiles from the tab order?  Is this a known accessibility issue?
Dimo
Telerik team
 answered on 12 Nov 2024
7 answers
2.0K+ views
Is there currently a way to access filtered data from the grid? I want users to be able to filter data in the grid and then display it in a chart. The only way I can see to do it is by rolling my own filtering code with the OnRead event.
Jonathan
Top achievements
Rank 1
Iron
 answered on 11 Nov 2024
0 answers
92 views

Hi,

Dear Telerik Support Team,

I am reaching out to report an issue with the display of time slots in the Telerik Blazor Scheduler. I have configured the Scheduler to show time slots divided into intervals (e.g., 15-minute divisions) between each hour. However, the display does not reflect this configuration as expected.

Current Behavior: In the current Scheduler view (refer to attached "ActualCalendar.png"), each hour is displayed as a single block without any subdivisions. This makes it challenging to view and schedule appointments with finer time granularity.

Expected Behavior: I would like the Scheduler to display time slots in a divided format, as shown in the "ExpectedCalendar.png" attachment. In this view, each hour is divided into 15-minute intervals (or the chosen interval), allowing for more precise scheduling and time management.

Request: Could you please guide me on how to achieve the expected behavior with the Telerik Blazor Scheduler? I have already tried adjusting the SlotDuration and MinorTickCount properties, but it does not seem to produce the desired effect.

Your assistance in resolving this issue would be greatly appreciated, as the ability to view divided time slots is crucial for our application's scheduling requirements.

Thank you for your time and support.

Best regards,
Pavan Rahul
Pavan
Top achievements
Rank 1
 asked on 11 Nov 2024
1 answer
145 views

We have a type that we are trying to bind to a column chart. The chart fails to bind if the properties are decorated with JsonPropertyName attribute. Remove the attribute the data binds Ok. Is there a work around that allows us to keep the attribute decoration?

<TelerikGridLayout>
    <GridLayoutColumns>
        <GridLayoutColumn Width="60%"></GridLayoutColumn>
        <GridLayoutColumn Width="40%"></GridLayoutColumn>
    </GridLayoutColumns>
        <GridLayoutItems>
        <GridLayoutItem Column="2">
            <TelerikChart>
                <ChartSeriesItems>
                    <ChartSeries Type="ChartSeriesType.Column" Name="Successful" Data=transactionByDateResponse2 Field=@nameof(TransactionSummaryResponse2.SuccessfulCount) CategoryField=@nameof(TransactionSummaryResponse2.TransactionDate)>
                        <ChartSeriesStack Group="ChartSeriesType.Column" />
                    </ChartSeries>
                    <ChartSeries Type="ChartSeriesType.Column" Name="Failed" Data=transactionByDateResponse2 Field=@nameof(TransactionSummaryResponse2.FailedCount)>
                        <ChartSeriesStack Group="ChartSeriesType.Column" />
                    </ChartSeries>
                    <ChartSeries Type="ChartSeriesType.Column" Name="Vend Failed" Data=transactionByDateResponse2 Field=@nameof(TransactionSummaryResponse2.VendFailedCount)>
                        <ChartSeriesStack Group="ChartSeriesType.Column" />
                    </ChartSeries>
                    <ChartSeries Type="ChartSeriesType.Column" Name="Expired" Data=transactionByDateResponse2 Field=@nameof(TransactionSummaryResponse2.ExpiredCount)>
                        <ChartSeriesStack Group="ChartSeriesType.Column" />
                    </ChartSeries>
                </ChartSeriesItems>
                <ChartLegend Position="ChartLegendPosition.Bottom"/>
            </TelerikChart>
        </GridLayoutItem>
    </GridLayoutItems>
</TelerikGridLayout>

 

namespace Poseidon.BackOffice.Blazor.Features.Transactions.Components
{
    public record TransactionSummaryResponse2
    {
        [JsonPropertyName("transactionDate")]
        public DateOnly TransactionDate { get; init; }

        [JsonPropertyName("expiredCount")]
        public long ExpiredCount { get; init; }

        [JsonPropertyName("expiredTotalAmountInMinorUnits")]
        public decimal ExpiredTotalAmountInMinorUnits { get; init; }

        [JsonPropertyName("successfulCount")]
        public long SuccessfulCount { get; init; }

        [JsonPropertyName("successfulTotalAmountInMinorUnits")]
        public decimal SuccessfulTotalAmountInMinorUnits { get; init; }

        [JsonPropertyName("failedCount")]
        public long FailedCount { get; init; }

        [JsonPropertyName("failedTotalAmountInMinorUnits")]
        public decimal FailedTotalAmountInMinorUnits { get; init; }

        [JsonPropertyName("vendFailedCount")]
        public long VendFailedCount { get; init; }

        [JsonPropertyName("vendFailedTotalAmountInMinorUnits")]
        public decimal VendFailedTotalAmountInMinorUnits { get; init; }
    }


    public partial class TransactionReportSummary
    {
        List<TransactionSummaryResponse2> transactionByDateResponse2 = new();

        protected override void OnInitialized()
        {
            TransactionSummaryResponse2 transactionSummaryResponse2item = new TransactionSummaryResponse2 { TransactionDate = new DateOnly(2024, 11, 5), ExpiredCount = 1, FailedCount = 2, SuccessfulCount = 3, VendFailedCount = 4 };
            transactionByDateResponse2.Add(transactionSummaryResponse2item);
            transactionSummaryResponse2item = new TransactionSummaryResponse2 { TransactionDate = new DateOnly(2024, 11, 4), ExpiredCount = 1, FailedCount = 2, SuccessfulCount = 3, VendFailedCount = 4 };
            transactionByDateResponse2.Add(transactionSummaryResponse2item);
            transactionSummaryResponse2item = new TransactionSummaryResponse2 { TransactionDate = new DateOnly(2024, 11, 3), ExpiredCount = 1, FailedCount = 2, SuccessfulCount = 3, VendFailedCount = 4 };
            transactionByDateResponse2.Add(transactionSummaryResponse2item);
        }
    }
}
Tsvetomir
Telerik team
 answered on 08 Nov 2024
Narrow your results
Selected tags
Tags
+? more
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Bohdan
Top achievements
Rank 3
Iron
Iron
Iron
Rob
Top achievements
Rank 3
Bronze
Bronze
Iron
Elliot
Top achievements
Rank 1
Iron
Iron
Iron
Sunil
Top achievements
Rank 1
Cynthia
Top achievements
Rank 1
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?