)args.Items.First();
var originalItem = GridData.First(x =>
{
diff --git a/knowledge-base/grid-cascade-dropdowns-for-fields.md b/knowledge-base/grid-cascade-dropdowns-for-fields.md
index 58d7fedbb1..6ecfecc8fa 100644
--- a/knowledge-base/grid-cascade-dropdowns-for-fields.md
+++ b/knowledge-base/grid-cascade-dropdowns-for-fields.md
@@ -109,7 +109,7 @@ There are three approaches you can take:
{
if(CurrentlyEditedEmployee is null)
{
- CurrentlyEditedEmployee = args.Item as SampleData;
+ CurrentlyEditedEmployee = args.Items.First() as SampleData;
}
await CascadeSecondList(null);
}
@@ -119,7 +119,7 @@ There are three approaches you can take:
public void UpdateHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
//perform actual data source operations here
diff --git a/knowledge-base/grid-change-editable-attribute-update-create.md b/knowledge-base/grid-change-editable-attribute-update-create.md
index 1ab0ed9f7b..cb84f38b3c 100644
--- a/knowledge-base/grid-change-editable-attribute-update-create.md
+++ b/knowledge-base/grid-change-editable-attribute-update-create.md
@@ -81,7 +81,7 @@ In the two examples below, the `Name` column uses the `Editable` property, and t
public void UpdateHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
//perform actual data source operations here
//if you have a context added through an @inject statement, you could call its SaveChanges() method
@@ -192,7 +192,7 @@ In the two examples below, the `Name` column uses the `Editable` property, and t
{
isEditable = true; // this is the flag that we use for the Editable property
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
//perform actual data source operations here
//if you have a context added through an @inject statement, you could call its SaveChanges() method
diff --git a/knowledge-base/grid-conditionally-hide-command-buttons.md b/knowledge-base/grid-conditionally-hide-command-buttons.md
index b7361d8cc5..2c194d9b1b 100644
--- a/knowledge-base/grid-conditionally-hide-command-buttons.md
+++ b/knowledge-base/grid-conditionally-hide-command-buttons.md
@@ -72,17 +72,17 @@ To conditionally show or hide command buttons in a Grid, use the context paramet
private async Task HandleCustomSave(GridCommandEventArgs args)
{
- SampleData theUpdatedItem = args.Item as SampleData;
+ SampleData theUpdatedItem = args.Items.First() as SampleData;
}
private async Task HandleCustomButtonClick(GridCommandEventArgs args)
{
- CustomCommandResult = new MarkupString(CustomCommandResult + string.Format("
Custom command triggered for item {0}", (args.Item as SampleData).ID));
+ CustomCommandResult = new MarkupString(CustomCommandResult + string.Format("
Custom command triggered for item {0}", (args.Items.First() as SampleData).ID));
}
private async Task HandleUpdate(GridCommandEventArgs args)
{
- SampleData theUpdatedItem = args.Item as SampleData;
+ SampleData theUpdatedItem = args.Items.First() as SampleData;
await MyService.Update(theUpdatedItem);
@@ -178,17 +178,17 @@ If you prefer not to remove the button from the DOM but simply hide it, you can
private async Task HandleCustomSave(GridCommandEventArgs args)
{
- SampleData theUpdatedItem = args.Item as SampleData;
+ SampleData theUpdatedItem = args.Items.First() as SampleData;
}
private async Task HandleCustomButtonClick(GridCommandEventArgs args)
{
- CustomCommandResult = new MarkupString(CustomCommandResult + string.Format("
Custom command triggered for item {0}", (args.Item as SampleData).ID));
+ CustomCommandResult = new MarkupString(CustomCommandResult + string.Format("
Custom command triggered for item {0}", (args.Items.First() as SampleData).ID));
}
private async Task HandleUpdate(GridCommandEventArgs args)
{
- SampleData theUpdatedItem = args.Item as SampleData;
+ SampleData theUpdatedItem = args.Items.First() as SampleData;
await MyService.Update(theUpdatedItem);
diff --git a/knowledge-base/grid-create-reusable-columns.md b/knowledge-base/grid-create-reusable-columns.md
index 112e02c31f..691e4997b3 100644
--- a/knowledge-base/grid-create-reusable-columns.md
+++ b/knowledge-base/grid-create-reusable-columns.md
@@ -51,7 +51,7 @@ To create a reusable `GridColumn` component with templates, follow these steps:
private async Task UpdateHandler(GridCommandEventArgs args)
{
- Employee item = (Employee)args.Item;
+ Employee item = (Employee)args.Items.First();
await MyService.Update(item);
diff --git a/knowledge-base/grid-customize-delete-confirmation-dialog.md b/knowledge-base/grid-customize-delete-confirmation-dialog.md
index 59f9c851ff..e0f0a3d3f1 100644
--- a/knowledge-base/grid-customize-delete-confirmation-dialog.md
+++ b/knowledge-base/grid-customize-delete-confirmation-dialog.md
@@ -110,7 +110,7 @@ Use a [Predefined Confirm Dialog](slug:dialog-predefined#confirm) with the desir
private async Task OnGridUpdate(GridCommandEventArgs args)
{
- var updatedItem = (Product)args.Item;
+ var updatedItem = (Product)args.Items.First();
bool cancelled = await ShouldCancel("Updating", updatedItem.Name);
if (cancelled)
@@ -129,7 +129,7 @@ Use a [Predefined Confirm Dialog](slug:dialog-predefined#confirm) with the desir
private async Task OnGridDelete(GridCommandEventArgs args)
{
- var deletedItem = (Product)args.Item;
+ var deletedItem = (Product)args.Items.First();
bool cancelled = await ShouldCancel("Deleting", deletedItem.Name);
if (cancelled)
@@ -249,7 +249,7 @@ Using the [Dialog component](slug:dialog-overview) will let you have fully custo
private void OnGridSave(GridCommandEventArgs args)
{
- var itemToUpdate = (Product)args.Item;
+ var itemToUpdate = (Product)args.Items.First();
ItemToUpdate = itemToUpdate;
DialogContent = new MarkupString($"Saving product {ItemToUpdate.Name}.
Do you want to continue?
");
@@ -258,7 +258,7 @@ Using the [Dialog component](slug:dialog-overview) will let you have fully custo
private void OnGridDelete(GridCommandEventArgs args)
{
- var deletedItem = (Product)args.Item;
+ var deletedItem = (Product)args.Items.First();
ItemToDelete = deletedItem;
DialogContent = new MarkupString($"Deleting product {ItemToDelete.Name}.
Do you want to continue?
");
diff --git a/knowledge-base/grid-doubleclick-starts-editing.md b/knowledge-base/grid-doubleclick-starts-editing.md
index 9e9e3da545..2cd8d368c0 100644
--- a/knowledge-base/grid-doubleclick-starts-editing.md
+++ b/knowledge-base/grid-doubleclick-starts-editing.md
@@ -81,7 +81,7 @@ See the following example for reference:
async Task UpdateHandler(GridCommandEventArgs args)
{
- SampleData itemToUpdate = args.Item as SampleData;
+ SampleData itemToUpdate = args.Items.First() as SampleData;
int itemIndex = MyData.IndexOf(itemToUpdate);
if (itemIndex > -1)
{
diff --git a/knowledge-base/grid-edit-in-hierarchy.md b/knowledge-base/grid-edit-in-hierarchy.md
index 1b32442d89..08aaf553ba 100644
--- a/knowledge-base/grid-edit-in-hierarchy.md
+++ b/knowledge-base/grid-edit-in-hierarchy.md
@@ -125,7 +125,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
var index = GridData.FindIndex(x => x.ProductId == item.ProductId);
if (index != -1)
{
@@ -136,7 +136,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
item.ProductId = ++LastId;
@@ -148,7 +148,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
GridData.Remove(item);
}
@@ -161,7 +161,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
int index = data.FindIndex(x => x.OrderId == item.OrderId);
if (index != -1)
@@ -174,7 +174,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
item.OrderId = data.Count + 1;
@@ -186,7 +186,7 @@ Grid EditMode:
{
// perform actual data source operations here through your service
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
data.Remove(item);
diff --git a/knowledge-base/grid-edit-on-row-double-click.md b/knowledge-base/grid-edit-on-row-double-click.md
index 46636ffd12..8d5c5d9da2 100644
--- a/knowledge-base/grid-edit-on-row-double-click.md
+++ b/knowledge-base/grid-edit-on-row-double-click.md
@@ -72,7 +72,7 @@ The Grid exposes two events that allows you to respond to the user clicking on i
async Task UpdateHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
// perform actual data source operations here through your service
await MyService.Update(item);
@@ -83,7 +83,7 @@ The Grid exposes two events that allows you to respond to the user clicking on i
async Task DeleteHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
// perform actual data source operation here through your service
await MyService.Delete(item);
@@ -94,7 +94,7 @@ The Grid exposes two events that allows you to respond to the user clicking on i
async Task CreateHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
// perform actual data source operation here through your service
await MyService.Create(item);
diff --git a/knowledge-base/grid-expand-edited-row.md b/knowledge-base/grid-expand-edited-row.md
index 723bc5ab32..5bf413395b 100644
--- a/knowledge-base/grid-expand-edited-row.md
+++ b/knowledge-base/grid-expand-edited-row.md
@@ -117,7 +117,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
// When a row enters edit mode, expand it
private async Task OnEdit(GridCommandEventArgs args)
{
- var editedItem = (Product)args.Item;
+ var editedItem = (Product)args.Items.First();
var state = GridRef.GetState();
state.ExpandedItems = new List { editedItem }; // collapse all others
@@ -127,7 +127,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
#region CRUD Operations for Main Grid
private void UpdateProduct(GridCommandEventArgs args)
{
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
var index = GridData.FindIndex(x => x.ProductId == item.ProductId);
if (index != -1)
{
@@ -137,7 +137,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
private void CreateProduct(GridCommandEventArgs args)
{
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
item.ProductId = ++LastId;
GridData.Insert(0, item);
item.OrderDetails = GenerateOrderDetails(item);
@@ -156,7 +156,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
private void DeleteProduct(GridCommandEventArgs args)
{
- var item = (Product)args.Item;
+ var item = (Product)args.Items.First();
GridData.Remove(item);
}
#endregion
@@ -164,7 +164,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
#region CRUD for Details Grid
private void UpdateOrder(Product product, GridCommandEventArgs args)
{
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
int index = data.FindIndex(x => x.OrderId == item.OrderId);
if (index != -1)
@@ -175,7 +175,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
private void CreateOrder(GridCommandEventArgs args, Product product)
{
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
item.OrderId = data.Count + 1;
data.Insert(0, item);
@@ -183,7 +183,7 @@ To achieve automatic expansion of a detail template for the edited or newly inse
private void DeleteOrder(GridCommandEventArgs args, Product product)
{
- var item = (OrderDetails)args.Item;
+ var item = (OrderDetails)args.Items.First();
var data = product.OrderDetails;
data.Remove(item);
}
diff --git a/knowledge-base/grid-filter-date-only.md b/knowledge-base/grid-filter-date-only.md
index 47aa1f4c35..ebd2109d5f 100644
--- a/knowledge-base/grid-filter-date-only.md
+++ b/knowledge-base/grid-filter-date-only.md
@@ -254,7 +254,7 @@ This approach is suitable for both filter menu and filter row modes. It has the
void OnGridUpdate(GridCommandEventArgs args)
{
- var item = args.Item as GridItem;
+ var item = args.Items.First() as GridItem;
var index = GridData.FindIndex(x => x.Id == item.Id);
GridData[index] = item;
}
diff --git a/knowledge-base/grid-filter-edit-enum.md b/knowledge-base/grid-filter-edit-enum.md
index ab087e9316..d67aed8cba 100644
--- a/knowledge-base/grid-filter-edit-enum.md
+++ b/knowledge-base/grid-filter-edit-enum.md
@@ -75,7 +75,7 @@ To control how each enum value will show in the filtering DropDownList, decorate
private void UpdateHandler(GridCommandEventArgs args)
{
- SampleData item = (SampleData)args.Item;
+ SampleData item = (SampleData)args.Items.First();
//update the view-model
var index = MyData.FindIndex(i => i.ID == item.ID);
diff --git a/knowledge-base/grid-handle-empty-popup-footer.md b/knowledge-base/grid-handle-empty-popup-footer.md
index 7fa3abe41a..4942c86c70 100644
--- a/knowledge-base/grid-handle-empty-popup-footer.md
+++ b/knowledge-base/grid-handle-empty-popup-footer.md
@@ -156,7 +156,7 @@ To display custom buttons in the footer and handle form submission, follow these
private void DeleteItem(GridCommandEventArgs args)
{
- DeletePerson(args.Item as Person);
+ DeletePerson(args.Items.First() as Person);
LoadData();
}
@@ -364,7 +364,7 @@ This approach relies on using CSS to hide the empty footer. Add your custom clas
private void DeleteItem(GridCommandEventArgs args)
{
- DeletePerson(args.Item as Person);
+ DeletePerson(args.Items.First() as Person);
LoadData();
}
diff --git a/knowledge-base/grid-incell-add-new-row-enter.md b/knowledge-base/grid-incell-add-new-row-enter.md
index a62fd6b8cf..14a1b9abdb 100644
--- a/knowledge-base/grid-incell-add-new-row-enter.md
+++ b/knowledge-base/grid-incell-add-new-row-enter.md
@@ -171,7 +171,7 @@ function getLastKey() {
private async Task OnGridUpdate(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
var index = GridData.FindIndex(i => i.Id == item.Id);
if (index != -1)
@@ -187,7 +187,7 @@ function getLastKey() {
private void OnGridCreate(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
item.Id = ++LastId;
GridData.Insert(0, item);
@@ -195,7 +195,7 @@ function getLastKey() {
private void OnGridDelete(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
GridData.Remove(item);
}
diff --git a/knowledge-base/grid-incell-dropdown-opening-behavior.md b/knowledge-base/grid-incell-dropdown-opening-behavior.md
index 129d77b3cf..e9213ce6c6 100644
--- a/knowledge-base/grid-incell-dropdown-opening-behavior.md
+++ b/knowledge-base/grid-incell-dropdown-opening-behavior.md
@@ -68,7 +68,7 @@ To reproduce, double click quickly a row in the `Role` column.
public void UpdateHandler(GridCommandEventArgs args)
{
- var argsItem = args.Item as Employee;
+ var argsItem = args.Items.First() as Employee;
var index = GridData.FindIndex(i => i.EmployeeId == argsItem.EmployeeId);
if (index != -1)
{
@@ -165,7 +165,7 @@ The sample below demonstrates how to achieve the desired behavior by using the `
public void UpdateHandler(GridCommandEventArgs args)
{
- var argsItem = args.Item as Employee;
+ var argsItem = args.Items.First() as Employee;
var index = GridData.FindIndex(i => i.EmployeeId == argsItem.EmployeeId);
if (index != -1)
{
diff --git a/knowledge-base/grid-load-cached-data-after-crud-operations.md b/knowledge-base/grid-load-cached-data-after-crud-operations.md
index 1da9b1045a..fc32576768 100644
--- a/knowledge-base/grid-load-cached-data-after-crud-operations.md
+++ b/knowledge-base/grid-load-cached-data-after-crud-operations.md
@@ -69,7 +69,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridCreate(GridCommandEventArgs args)
{
- var createdItem = (Product)args.Item;
+ var createdItem = (Product)args.Items.First();
int createdItemId = await GridProductService.Create(createdItem);
createdItem.Id = createdItemId;
@@ -78,7 +78,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridDelete(GridCommandEventArgs args)
{
- var deletedItem = (Product)args.Item;
+ var deletedItem = (Product)args.Items.First();
await GridProductService.Delete(deletedItem);
@@ -87,7 +87,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridUpdate(GridCommandEventArgs args)
{
- var updatedItem = (Product)args.Item;
+ var updatedItem = (Product)args.Items.First();
await GridProductService.Update(updatedItem);
@@ -256,7 +256,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridCreate(GridCommandEventArgs args)
{
- var createdItem = (Product)args.Item;
+ var createdItem = (Product)args.Items.First();
int createdItemId = await GridProductService.Create(createdItem);
@@ -268,7 +268,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridDelete(GridCommandEventArgs args)
{
- var deletedItem = (Product)args.Item;
+ var deletedItem = (Product)args.Items.First();
await GridProductService.Delete(deletedItem);
@@ -304,7 +304,7 @@ Use the [Grid CUD event arguments](slug:grid-editing-overview#events) to update
private async Task OnGridUpdate(GridCommandEventArgs args)
{
- var updatedItem = (Product)args.Item;
+ var updatedItem = (Product)args.Items.First();
await GridProductService.Update(updatedItem);
diff --git a/knowledge-base/grid-loader-during-contextmenu-actions.md b/knowledge-base/grid-loader-during-contextmenu-actions.md
index d199a1a7a0..1304a2fb53 100644
--- a/knowledge-base/grid-loader-during-contextmenu-actions.md
+++ b/knowledge-base/grid-loader-during-contextmenu-actions.md
@@ -173,7 +173,7 @@ To display a spinner during delayed operations initiated from a ContextMenu in a
private async Task CreateItem(GridCommandEventArgs args)
{
- var argsItem = args.Item as SampleData;
+ var argsItem = args.Items.First() as SampleData;
argsItem.ID = GridData.Count + 1;
@@ -182,7 +182,7 @@ To display a spinner during delayed operations initiated from a ContextMenu in a
private async Task UpdateHandler(GridCommandEventArgs args)
{
- var argsItem = args.Item as SampleData;
+ var argsItem = args.Items.First() as SampleData;
var index = GridData.ToList().FindIndex(i => i.ID == argsItem.ID);
if (index != -1)
diff --git a/knowledge-base/grid-multiselect-editor.md b/knowledge-base/grid-multiselect-editor.md
index 2436590739..aca3f40a92 100644
--- a/knowledge-base/grid-multiselect-editor.md
+++ b/knowledge-base/grid-multiselect-editor.md
@@ -88,7 +88,7 @@ Add the [Multi Select component](slug:multiselect-overview) to the [EditorTempla
async Task UpdateHandler(GridCommandEventArgs args)
{
- Team item = (Team)args.Item;
+ Team item = (Team)args.Items.First();
// perform actual data source operations here through your service
await MyService.Update(item);
diff --git a/knowledge-base/grid-popup-edit-title.md b/knowledge-base/grid-popup-edit-title.md
index ade890274c..558cb87d63 100644
--- a/knowledge-base/grid-popup-edit-title.md
+++ b/knowledge-base/grid-popup-edit-title.md
@@ -70,14 +70,14 @@ How to dynamically set the Grid popup edit Window title?
private void OnGridEdit(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
PopupTitle = "Editing " + item.Name;
}
private void OnGridUpdate(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
var index = GridData.FindIndex(i => i.Id == item.Id);
if (index != -1)
@@ -88,7 +88,7 @@ How to dynamically set the Grid popup edit Window title?
private void OnGridCreate(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
item.Id = GridData.Count + 1;
diff --git a/knowledge-base/grid-row-template-simulate-built-in-functions.md b/knowledge-base/grid-row-template-simulate-built-in-functions.md
index f226562fcb..be5a219755 100644
--- a/knowledge-base/grid-row-template-simulate-built-in-functions.md
+++ b/knowledge-base/grid-row-template-simulate-built-in-functions.md
@@ -202,7 +202,7 @@ To implement a custom command column:
private void OnCreateHandler(GridCommandEventArgs args)
{
- var createdItem = (ArticleDto)args.Item;
+ var createdItem = (ArticleDto)args.Items.First();
createdItem.Id = Guid.NewGuid();
var rnd = new Random();
createdItem.ImageUrl = $"https://demos.telerik.com/blazor-ui/images/photos/{rnd.Next(1, 30) % 7 + 1}.jpg";
@@ -226,7 +226,7 @@ To implement a custom command column:
private void OnUpdateHandler(GridCommandEventArgs args)
{
- var updatedItem = (ArticleDto)args.Item;
+ var updatedItem = (ArticleDto)args.Items.First();
var index = GridData.FindIndex(i => i.Id == updatedItem.Id);
if (index != -1)
{
diff --git a/knowledge-base/grid-select-on-incell-edit.md b/knowledge-base/grid-select-on-incell-edit.md
index e09bc7f2dc..184b2b9bd0 100644
--- a/knowledge-base/grid-select-on-incell-edit.md
+++ b/knowledge-base/grid-select-on-incell-edit.md
@@ -93,7 +93,7 @@ Use the [Grid events](slug:grid-events#cud-events) to update the `SelectedItems`
public void EditHandler(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
AddToSelectedCollection(item);
}
@@ -111,7 +111,7 @@ Use the [Grid events](slug:grid-events#cud-events) to update the `SelectedItems`
public void UpdateItem(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
int index = GridData.FindIndex(x => item.ProductId == x.ProductId);
var currentSelectedItems = new List(SelectedItems);
int selectedItemIndex = currentSelectedItems.FindIndex(x => x.ProductId == item.ProductId);
@@ -209,7 +209,7 @@ Use the [Grid events](slug:grid-events#cud-events) to update the `SelectedItems`
@code {
public void EditHandler(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
AddToSelectedCollection(item);
}
@@ -227,7 +227,7 @@ Use the [Grid events](slug:grid-events#cud-events) to update the `SelectedItems`
public void UpdateItem(GridCommandEventArgs args)
{
- var item = args.Item as Product;
+ var item = args.Items.First() as Product;
int index = GridData.FindIndex(x => item.ProductId == x.ProductId);
var currentSelectedItems = new List(SelectedItems);
int selectedItemIndex = currentSelectedItems.FindIndex(x => x.ProductId == item.ProductId);
diff --git a/knowledge-base/grid-transposed.md b/knowledge-base/grid-transposed.md
index 348aaf2339..5d970576eb 100644
--- a/knowledge-base/grid-transposed.md
+++ b/knowledge-base/grid-transposed.md
@@ -238,7 +238,7 @@ The following example demonstrates all options.
private void OnGridUpdate(GridCommandEventArgs args)
{
- var updatedItem = (GridItem)args.Item;
+ var updatedItem = (GridItem)args.Items.First();
DataItem.Active = updatedItem.Active;
DataItem.Description = updatedItem.Description;
diff --git a/knowledge-base/grids-foreign-key.md b/knowledge-base/grids-foreign-key.md
index 12f7a7c703..6255248adb 100644
--- a/knowledge-base/grids-foreign-key.md
+++ b/knowledge-base/grids-foreign-key.md
@@ -296,7 +296,7 @@ There are a few ways to implement the scenario:
private async Task OnGridUpdate(GridCommandEventArgs args)
{
- Product updatedItem = (Product)args.Item;
+ Product updatedItem = (Product)args.Items.First();
int indexToUpdate = Products.FindIndex(x => x.Id == updatedItem.Id);
if (indexToUpdate != -1)
{
@@ -307,14 +307,14 @@ There are a few ways to implement the scenario:
private async Task OnGridCreate(GridCommandEventArgs args)
{
- Product createdItem = (Product)args.Item;
+ Product createdItem = (Product)args.Items.First();
await Task.Delay(100); // simulate async operation
Products.Insert(0, createdItem);
}
private async Task OnGridDelete(GridCommandEventArgs args)
{
- Product itemToDelete = (Product)args.Item;
+ Product itemToDelete = (Product)args.Items.First();
await Task.Delay(100); // simulate async operation
Products.Remove(Products.First(x => x.Id == itemToDelete.Id));
}
diff --git a/knowledge-base/treelist-add-edit-state.md b/knowledge-base/treelist-add-edit-state.md
index 566efb1cb4..76f137e570 100644
--- a/knowledge-base/treelist-add-edit-state.md
+++ b/knowledge-base/treelist-add-edit-state.md
@@ -292,7 +292,7 @@ All these operations can also be used for [`Incell`](slug:treelist-editing-incel
private async Task OnTreeListInlineCreate(TreeListCommandEventArgs args)
{
- var createdItem = (Employee)args.Item;
+ var createdItem = (Employee)args.Items.First();
var parentItem = (Employee?)args.ParentItem;
await TreeListEmployeeInlineService.Create(createdItem, parentItem);
@@ -302,7 +302,7 @@ All these operations can also be used for [`Incell`](slug:treelist-editing-incel
private async Task OnTreeListInlineUpdate(TreeListCommandEventArgs args)
{
- var updatedItem = (Employee)args.Item;
+ var updatedItem = (Employee)args.Items.First();
await TreeListEmployeeInlineService.Update(updatedItem);
@@ -315,7 +315,7 @@ All these operations can also be used for [`Incell`](slug:treelist-editing-incel
private async Task OnTreeListIncellCreate(TreeListCommandEventArgs args)
{
- var createdItem = (Employee)args.Item;
+ var createdItem = (Employee)args.Items.First();
var parentItem = (Employee?)args.ParentItem;
await TreeListEmployeeIncellService.Create(createdItem, parentItem);
@@ -325,7 +325,7 @@ All these operations can also be used for [`Incell`](slug:treelist-editing-incel
private async Task OnTreeListIncellUpdate(TreeListCommandEventArgs args)
{
- var updatedItem = (Employee)args.Item;
+ var updatedItem = (Employee)args.Items.First();
await TreeListEmployeeIncellService.Update(updatedItem);
diff --git a/knowledge-base/treelist-enable-checkbox-selection-only-edit-mode.md b/knowledge-base/treelist-enable-checkbox-selection-only-edit-mode.md
index 8be36fe0f4..a7c3d565dc 100644
--- a/knowledge-base/treelist-enable-checkbox-selection-only-edit-mode.md
+++ b/knowledge-base/treelist-enable-checkbox-selection-only-edit-mode.md
@@ -91,7 +91,7 @@ Below is an example implementation that toggles the visibility of the Checkbox C
#region CUD operations
private async Task UpdateItem(TreeListCommandEventArgs args)
{
- var item = args.Item as Employee;
+ var item = args.Items.First() as Employee;
await MyService.Update(item);
@@ -103,7 +103,7 @@ Below is an example implementation that toggles the visibility of the Checkbox C
private async Task CreateItem(TreeListCommandEventArgs args)
{
- var item = args.Item as Employee;
+ var item = args.Items.First() as Employee;
var parentItem = args.ParentItem as Employee;
await MyService.Create(item, parentItem);
@@ -116,7 +116,7 @@ Below is an example implementation that toggles the visibility of the Checkbox C
private async Task DeleteItem(TreeListCommandEventArgs args)
{
- var item = args.Item as Employee;
+ var item = args.Items.First() as Employee;
await MyService.Delete(item);
@@ -128,7 +128,7 @@ Below is an example implementation that toggles the visibility of the Checkbox C
//Show CheckboxColumn
SelectionEnabled = true;
- Employee empl = args.Item as Employee;
+ Employee empl = args.Items.First() as Employee;
//Check if the item is already selected, so you do not clear its selection in the OnCancel
if (SelectedItems.Any(x => x.Id == empl.Id))
@@ -149,7 +149,7 @@ Below is an example implementation that toggles the visibility of the Checkbox C
private async Task OnCancelHandler(TreeListCommandEventArgs args)
{
- Employee empl = args.Item as Employee;
+ Employee empl = args.Items.First() as Employee;
//Check if the user selected the item during the last edit and cancel it. Leave the selection if the item was previously selected
if (!ItemAlreadySelected && SelectedItems.Any(x => x.Id == empl.Id))
diff --git a/knowledge-base/upload-files-in-grid.md b/knowledge-base/upload-files-in-grid.md
index a0022e2119..8cdf35409f 100644
--- a/knowledge-base/upload-files-in-grid.md
+++ b/knowledge-base/upload-files-in-grid.md
@@ -176,7 +176,7 @@ The tabs below show a possible implementation for the Razor UI, `Save` and `Remo
{
await Task.Delay(1); // simulate network delay
- var updatedItem = (Product)args.Item;
+ var updatedItem = (Product)args.Items.First();
var originalItemIndex = GridData.FindIndex(x => x.Id == updatedItem.Id);
if (originalItemIndex >= 0)
{
@@ -188,7 +188,7 @@ The tabs below show a possible implementation for the Razor UI, `Save` and `Remo
{
await Task.Delay(100); // simulate network delay
- var addedItem = (Product)args.Item;
+ var addedItem = (Product)args.Items.First();
addedItem.Id = ++LastId;
}
@@ -197,14 +197,14 @@ The tabs below show a possible implementation for the Razor UI, `Save` and `Remo
{
await Task.Delay(100); // simulate network delay
- var createdItem = (Product)args.Item;
+ var createdItem = (Product)args.Items.First();
GridData.Insert(0, createdItem);
}
private async Task OnGridDelete(GridCommandEventArgs args)
{
- var itemToDelete = (Product)args.Item;
+ var itemToDelete = (Product)args.Items.First();
var originalItemIndex = GridData.FindIndex(x => x.Id == itemToDelete.Id);
if (originalItemIndex >= 0)
{
diff --git a/knowledge-base/validation-custom-dataannotations-validator.md b/knowledge-base/validation-custom-dataannotations-validator.md
index b81ff96183..3ab293e455 100644
--- a/knowledge-base/validation-custom-dataannotations-validator.md
+++ b/knowledge-base/validation-custom-dataannotations-validator.md
@@ -113,7 +113,7 @@ This KB answers the following questions:
private void OnGridCreate(GridCommandEventArgs args)
{
- var createdItem = (OrderDelivery)args.Item;
+ var createdItem = (OrderDelivery)args.Items.First();
createdItem.Id = ++LastId;
@@ -122,7 +122,7 @@ This KB answers the following questions:
private void OnGridUpdate(GridCommandEventArgs args)
{
- var updatedItem = (OrderDelivery)args.Item;
+ var updatedItem = (OrderDelivery)args.Items.First();
var originalItemIndex = GridData.FindIndex(i => i.Id == updatedItem.Id);
if (originalItemIndex != -1)