Thread ID: |
Created: |
Updated: |
Platform: |
Replies: |
149559 | Nov 29,2019 05:28 PM UTC | Dec 6,2019 04:23 AM UTC | Blazor | 10 |
![]() |
Tags: Grid |
<EjsGrid DataSource="@Orders" ModelType="@Model" Toolbar=@ToolbarItems>
...
<GridColumns>
...
<GridColumn Field=@nameof(Order.EmployeeID) HeaderText="Employee Name" ForeignKeyValue="FirstName" DataSource="@Employees" Width="150">
<EditTemplate>
<EjsDropDownList TValue="string" ID="EmployeeID" Index="0" DataSource="@Employees">
<DropDownListFieldSettings Text="FirstName" Value="EmployeeID"></DropDownListFieldSettings>
</EjsDropDownList>
</EditTemplate>
</GridColumn>
...
</GridColumns>
</EjsGrid>
|
<EjsGrid DataSource="@Orders" ModelType="@Model" Toolbar=@ToolbarItems>
<GridEvents RowSelected="RowSelected" TValue="Order"></GridEvents>
<GridColumns>
...
<GridColumn Field=@nameof(Order.EmployeeID) HeaderText="Employee Name" ForeignKeyValue="FirstName" DataSource="@Employees" Width="150">
<EditTemplate>
<EjsDropDownList TValue="string" ID="EmployeeID" Index="@DropDownIndex" DataSource="@Employees">
<DropDownListFieldSettings Text="FirstName" Value="EmployeeID"></DropDownListFieldSettings>
</EjsDropDownList>
</EditTemplate>
</GridColumn>
...
</GridColumns>
</EjsGrid>
@code{
public int? DropDownIndex;
...
public void RowSelected(RowSelectEventArgs<Order> args)
{
if(args.RowIndex == 2)
{
DropDownIndex = 0; //If and only if selected RowIndex is 2, the Index value will be 0, else it will be based on the selected RowIndex
}
else
{
DropDownIndex = Convert.ToInt32(args.RowIndex);
}
}
...
}
|
<GridColumn Field=@nameof(Order.EmployeeID) HeaderText="Employee Name" ForeignKeyValue="FirstName" DataSource="@Employees" Width="150">
<EditTemplate>
<label class="e-float-text e-label-top e-edittemplate">Employee Name</label><br>
<EjsDropDownList TValue="string" ID="EmployeeID" Index="@DropDownIndex" DataSource="@Employees">
<DropDownListFieldSettings Text="FirstName" Value="EmployeeID"></DropDownListFieldSettings>
</EjsDropDownList>
</EditTemplate>
</GridColumn>
|
<GridColumn Field=@nameof(Order.EmployeeID) HeaderText="Employee Name" ForeignKeyValue="FirstName" DataSource="@Employees" Width="150">
<EditTemplate>
@{
var Order = (context as Order);
<label class="e-float-text e-label-top e-edittemplate">Employee Name</label><br>
<EjsDropDownList ID="EmployeeID" Value="@(Order.EmployeeID)" DataSource="@Employees">
<DropDownListFieldSettings Text="FirstName" Value="EmployeeID"></DropDownListFieldSettings>
</EjsDropDownList>
}
</EditTemplate>
</GridColumn>
|
@*We have provided the EditTemplate inside another template(DetailTemplate). At these cases you must provide Context*@
<EjsGrid ModelType="@Model" DataSource="@Employees" Height="315px">
<GridTemplates>
<DetailTemplate>
<EjsGrid DataSource="@Orders" Query="@($"new ej.data.Query().where('EmployeeID', 'equal', {employee.EmployeeID})")">
<GridColumns>
<EditTemplate Context="Order">
@{
var Order = (context as Order);
<EjsDropDownList HeaderTemplate="EmployeeID" TValue="int?" Value="@(Order.EmployeeID)" DataSource="@Employees">
<DropDownListFieldSettings Text="FirstName" Value="EmployeeID"></DropDownListFieldSettings>
</EjsDropDownList>
}
</EditTemplate>
</GridColumn>
...
</GridColumns>
</EjsGrid>
</DetailTemplate>
</GridTemplates>
...
</EjsGrid>
|
This post will be permanently deleted. Are you sure you want to continue?
Sorry, An error occured while processing your request. Please try again later.
This page will automatically be redirected to the sign-in page in 10 seconds.