Expand DataGrid on row click?

is it possible to expand the subitem when a row is clicked?

	<RadzenGrid @ref="_gridMeasures" AllowFiltering="true" AllowPaging="true" AllowSorting="true"
            Data="@(getMeasuresResult)" TItem="Measure" RowSelect="@gridMeasuresRowSelect" RowExpand="@gridMeasuresRowExpand">
	<Template Context="data2">
        <MeasureEditor Entity="@data2" @ref="_measureEditor" DataChangedAction="DataChangedAction" />
    protected async Task gridMeasuresRowSelect(Measure args)
        // expand row
1 Like

There is no public method for this at the moment however we will add it in the next update.


Has this made it in? I'm trying to make certain rows auto-expand on page load.

Has the ability to expand a row with sub items been made possible yet? Thanks.

HI, exist now some possibilities how to expand row by code?

You can check this demo for more info: https://blazor.radzen.com/master-detail-hierarchy

1 Like

Been awhile on this thread. Nevertheless... I ran into same question and this was all I found. Don't think that Demo from radzen covered this (unless I missed something there). I got it working by:

  1. Binding the selected item. E.g.

  2. Declaring in code section...

    private IList? selectedItems;

  3. Method to trigger the RowExpand...

    private async Task HandleShowItemDetail()
    var itemModel = selectedItems?.FirstOrDefault();
    if (itemModel != null)
    await grid!.ExpandRow(itemModel);

  4. And then of course the method already triggered when the down carrot is clicked on the left side:

    private async Task RowExpand(ItemModel itemModel)
    if (itemModel.ItemDetail == null)
    isItemDetailLoading = true;
    itemModel.ItemDetail = await itemService.GetItemDetail(itemModel.Id.GetValueOrDefault());
    isItemDetailLoading = false;

I just tried your solution, but it is not working.

So I tried something different. It is so much easier today:

You just need to set in grid:


and then add method:

private async Task RowClick(DataGridRowMouseEventArgs mouseClick) {
await _grid!.ExpandRow(mouseClick.Data);