|
@using Syncfusion.Blazor.Grids
@using Syncfusion.Blazor.Buttons
<SfGrid DataSource="@Orders" AllowPaging="true">
<GridEvents RowSelecting="RowSelectingHandler" RowSelected="RowSelectedHandler" TValue="Order"></GridEvents>
<GridColumns>
<GridColumn Field=@nameof(Order.OrderID) HeaderText="Order ID" TextAlign="TextAlign.Right" Width="120"></GridColumn>
<GridColumn Field=@nameof(Order.CustomerID) HeaderText="Customer Name" Width="150"></GridColumn>
<GridColumn Field=@nameof(Order.OrderDate) HeaderText=" Order Date" Format="d" Type="ColumnType.Date" TextAlign="TextAlign.Right" Width="130"></GridColumn>
<GridColumn HeaderText="Employee Image" TextAlign="TextAlign.Center" Width="120">
<Template>
@{
var employee = (context as Order);
<SfButton Content="@employee.OrderID.ToString()"></SfButton>
}
</Template>
</GridColumn>
</GridColumns>
</SfGrid>
@code{
public List<Order> Orders { get; set; }
public void RowSelectingHandler(RowSelectingEventArgs<Order> args)
{
if (args.Data.OrderID == 1004) //we ahve prevented the row selection for order id --1004
{
args.Cancel = true; //enable this to prevent the row selection
}
}
public void RowSelectedHandler(RowSelectEventArgs<Order> Args)
{
}
}
|
1) "Kindly share the details how you are displaying button inside the Grid (either using Template column or using GridCommmandColumns)?"
i use Template column
2)"Are you using Syncfusion button or Html button inside the Grid column?"
Syncfusion button
3)Share the Grid rendering code example with button click event.
<GridColumn HeaderText="Stato" Type="ColumnType.String" TextAlign="TextAlign.Center" Width="30" AutoFit="true">
<Template>
@{
var doc = (context as DocTesViewModel);
<SfButton CssClass="e-link" @onclick="async (args) => await ShowDocCols(doc)">@doc.DocStato</SfButton>
}
</Template>