From 5a2af1f99fb48be2b2f3089ec865387b71e4a501 Mon Sep 17 00:00:00 2001 From: farveensulthana Date: Tue, 7 Apr 2026 12:21:17 +0530 Subject: [PATCH 1/2] 1015395: CustomAdaptor --- .../connecting-to-adaptors/custom-adaptor.md | 296 +++++++++++------- blazor/datagrid/events.md | 20 +- .../datagrid/how-to/css-isolation-for-grid.md | 2 +- .../customize-empty-grid-display-message.md | 2 +- .../how-to/define-events-programmatically.md | 4 +- .../datagrid/how-to/enable-or-disable-grid.md | 8 +- ...stom-loading-spinner-in-blazor-datagrid.md | 4 +- ...er-grid-inside-tab-with-specific-height.md | 4 +- .../resize-grid-in-various-dimension.md | 6 +- ...xt-as-additional-parameters-from-events.md | 6 +- ...ng-dictionary-values-in-grid-datasource.md | 2 +- 11 files changed, 208 insertions(+), 146 deletions(-) diff --git a/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md b/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md index 0617e1667e..b17ecdc8b3 100644 --- a/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md +++ b/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md @@ -10,75 +10,86 @@ documentation: ug # Custom Binding in Blazor DataGrid -The [SfDataManager](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.SfDataManager.html) supports custom adaptors, enabling you to perform manual operations on the data. This feature is useful for implementing custom data binding and editing operations in the Syncfusion® Blazor DataGrid. +Custom binding in the Syncfusion® Blazor [SfDataManager](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.SfDataManager.htm) provides a mechanism to implement custom logic for data retrieval and manipulation. It allows defining how data operations are executed by creating a [CustomAdaptor](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Adaptors.html#Syncfusion_Blazor_Adaptors_CustomAdaptor) that overrides default behavior. Instead of creating an entirely new adaptor from scratch, Custom Adaptor extends and modifies the behavior of existing adaptors by intercepting and customizing HTTP requests and responses. -To implement custom data binding in the Grid, the **DataAdaptor** class is used. This abstract class serves as a base class for the custom adaptor. +The [DataAdaptor](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataAdaptor.html) class is an abstract base that defines the interaction between the `SfDataManager` and an external data source. A custom adaptor derived from this class can override its virtual members to implement custom **data retrieval** and **CRUD** operations. These members include both synchronous and asynchronous methods such as **Read**, **Insert**, **Update**, **Remove**, and **BatchUpdate**, providing complete flexibility for integrating any data source while maintaining compatibility with Blazor [DataGrid](https://blazor.syncfusion.com/documentation/datagrid/getting-started-with-web-app) and other bound controls. -The **DataAdaptor** abstract class includes both synchronous and asynchronous method signatures, which can be overridden in the custom adaptor. The following are the method signatures available in this class: +For more details on configuring the `CustomAdaptor` with Syncfusion Blazor Components, refer to the [Custom Adaptor documentation](https://blazor.syncfusion.com/documentation/data/adaptors). + +To learn more about **Custom Binding** in the DataGrid, watch this video: + +{% youtube "youtube:https://www.youtube.com/watch?v=LmdUGJBUJqE" %} + +## Integrating Syncfusion Blazor DataGrid with CustomAdaptor + +### Step 1: Install and Configure Blazor DataGrid + +Syncfusion is a library that provides pre-built UI components like DataGrid, which is used to display data in a table format. + +**Instructions:** + +**1. Install Syncfusion® Blazor DataGrid and Themes NuGet packages** + +**Method 1: Using Package Manager Console** + +1. Open Visual Studio 2026. +2. Navigate to Tools → NuGet Package Manager → Package Manager Console. +3. Run the following commands: + +```powershell +Install-Package Syncfusion.Blazor.Grid -Version {{site.blazorversion}}; +Install-Package Syncfusion.Blazor.Themes -Version {{site.blazorversion}}; +``` + +**Method 2: Using NuGet Package Manager UI** + +1. Open Visual Studio 2026 → Tools → NuGet Package Manager → Manage NuGet Packages for Solution. +2. Search for and install each package individually: + - **[Syncfusion.Blazor.Grid](https://www.nuget.org/packages/Syncfusion.Blazor.Grid/)** (version {{site.blazorversion}}) + - **[Syncfusion.Blazor.Themes](https://www.nuget.org/packages/Syncfusion.Blazor.Themes/)** (version {{site.blazorversion}}) + +All required packages are now installed. + +**2. Register Syncfusion® Blazor service** + +Import the required namespaces in the `Components/_Imports.razor` file: ```csharp -public abstract class DataAdaptor -{ - /// - /// Performs data read operation synchronously. - /// - public virtual object Read(DataManagerRequest dataManagerRequest, string key = null) - - /// - /// Performs data read operation asynchronously. - /// - public virtual Task ReadAsync(DataManagerRequest dataManagerRequest, string key = null) - - /// - /// Performs insert operation synchronously. - /// - public virtual object Insert(DataManager dataManager, object data, string key) - /// - /// Performs insert operation asynchronously. - /// - public virtual Task InsertAsync(DataManager dataManager, object data, string key) - - /// - /// Performs remove operation synchronously. - /// - public virtual object Remove(DataManager dataManager, object data, string keyField, string key) - - /// - /// Performs remove operation asynchronously. - /// - public virtual Task RemoveAsync(DataManager dataManager, object data, string keyField, string key) - - /// - /// Performs update operation synchronously. - /// - public virtual object Update(DataManager dataManager, object data, string keyField, string key) - - /// - /// Performs update operation asynchronously. - /// - public virtual Task UpdateAsync(DataManager dataManager, object data, string keyField, string key) - - /// - /// Performs batch CRUD operations synchronously. - /// - public virtual object BatchUpdate(DataManager dataManager, object changedRecords, object addedRecords, object deletedRecords, string keyField, string key, int? dropIndex) - - /// - /// Performs batch CRUD operations asynchronously. - /// - public virtual Task BatchUpdateAsync(DataManager dataManager, object changedRecords, object addedRecords, object deletedRecords, string keyField, string key, int? dropIndex) -} +@using Syncfusion.Blazor +@using Syncfusion.Blazor.Grids ``` +- Register the Syncfusion® Blazor service in the **~/Program.cs** file. + +```csharp +using Syncfusion.Blazor; + +builder.Services.AddSyncfusionBlazor(); +``` + For apps using `WebAssembly` or `Auto (Server and WebAssembly)` render modes, register the service in both **~/Program.cs** files. + +**3. Add stylesheet and script resources** -To learn more about **Custom Binding** in the Grid, watch this video: +Add the Syncfusion stylesheet and scripts in the `Components/App.razor` file. Find the `` section and add: -{% youtube "youtube:https://www.youtube.com/watch?v=LmdUGJBUJqE" %} +```html + + + + + +``` + +For this project, the **bootstrap5** theme is used. A different theme can be selected or customized based on project requirements. Refer to the [Syncfusion Blazor Components Appearance](https://blazor.syncfusion.com/documentation/appearance/themes) documentation to learn more about theming and customization options. + +Syncfusion components are now configured and ready to use. For additional guidance, refer to the DataGrid's [getting‑started](https://blazor.syncfusion.com/documentation/datagrid/getting-started-with-web-app) documentation. -## Data Binding +### Step 2: Update the Blazor DataGrid with CustomAdaptor Custom data binding can be performed in the Syncfusion® Blazor DataGrid by providing a custom adaptor class and overriding the **Read** or **ReadAsync** method of the **DataAdaptor** abstract class. -The following sample code demonstrates how to implement custom data binding using a custom adaptor: +* In Blazor DataGrid, assign the custom adaptor type to the [AdaptorInstance](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataManager.html#Syncfusion_Blazor_DataManager_AdaptorInstance) property of the `SfDataManager`. + +The following sample code demonstrates how to implement custom data binding using a `CustomAdaptor`: ```cshtml @using Syncfusion.Blazor @@ -178,11 +189,39 @@ The following sample code demonstrates how to implement custom data binding usin > If the **DataManagerRequest.RequiresCounts** value is **true**, the `Read/ReadAsync` return value must be of type **DataResult** with properties **Result** (a collection of records) and **Count** (the total number of records). If the **DataManagerRequest.RequiresCounts** is **false**, simply return the collection of records. -The following image shows the custom-bound data displayed in the Grid: +> If the `Read/ReadAsync` method is not overridden in the custom adaptor, it will be handled by the default read handler. -![Custom Binding in Grid](../images/blazor-datagrid-custom-binding.png) +### Step 4: Running the Application -> If the `Read/ReadAsync` method is not overridden in the custom adaptor, it will be handled by the default read handler. +**Build the Application** + +1. Open PowerShell or your terminal. +2. Navigate to the project directory. +3. Build the application: + +```powershell +dotnet build +``` + +**Run the Application** + +Execute the following command: + +```powershell +dotnet run +``` + +The application will start, and the console will display the local URL (typically `http://localhost:5175` or `https://localhost:5001`). + +**Access the Application** + +1. Open a web browser. +2. Navigate to the URL displayed in the console. +3. The DataGrid application is now running and ready to use. + +The following image shows the custom-bound data displayed in the DataGrid: + +![Custom Binding in Grid](../images/blazor-datagrid-custom-binding.png) ## Inject Service into Custom Adaptor @@ -275,16 +314,20 @@ The following sample code demonstrates how to inject a service into the Custom A ## Custom Adaptor as a Component -A Custom Adaptor can be created as a component when the `DataAdaptor` class is extended from `OwningComponentBase`. You can create a Custom Adaptor using either of the two versions of the class: `DataAdaptor` or `DataAdaptor`. +A Custom Adaptor can be created as a component when the `DataAdaptor` class is extended from `OwningComponentBase`. The Custom Adaptor can be implemented using either of the two versions of the class: [DataAdaptor](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataAdaptor.html) or [DataAdaptor](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataAdaptor-1.html). + +### Step 1: Service Registration -Ensure that your service is registered in the **Program.cs** file. +Make sure that the required service is registered in the **Program.cs** file. ```csharp // Register the order service as scoped in the Program.cs file. builder.Services.AddScoped(); ``` -The following sample code demonstrates how to create a Custom Adaptor as a component: +### Step 2: Create DataGrid with Custom Adaptor Component + +Configure an `SfGrid` to use a Custom Adaptor component. Nest `CustomAdaptorComponent` inside `SfDataManager` so the adaptor participates in the component lifecycle and can receive scoped services for data access. ```cs @using Syncfusion.Blazor @@ -325,7 +368,9 @@ The following sample code demonstrates how to create a Custom Adaptor as a compo } ``` -The following sample code demonstrates `DataAdaptor` extended from `OwningComponentBase`. This provides a single service of type `T`, which can be accessed using the `Service` property. +### Step 3: Create a Component Adaptor with OwningComponentBase + +Use `DataAdaptor` with `OwningComponentBase` to receive a single scoped service via `Service`. Use that service in `Read`/`ReadAsync`, apply `DataOperations` (search/sort/filter/page), and return a collection or a `DataResult`. ```csharp // CustomAdaptorComponent.razor @@ -342,7 +387,7 @@ The following sample code demonstrates `DataAdaptor` extended from `OwningCompon @code { - // Parameter to hold child content. + // Parameter to hold child content (render fragment). [Parameter] [JsonIgnore] public RenderFragment ChildContent { get; set; } @@ -391,8 +436,15 @@ The following sample code demonstrates `DataAdaptor` extended from `OwningCompon } } ``` +**Key Points:** -The following sample code demonstrates `DataAdaptor` extended from `OwningComponentBase`. This allows you to request multiple services. +- **[OwningComponentBase](https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.components.owningcomponentbase?view=aspnetcore-10.0)** is a Blazor base class that provides component-scoped dependency injection and lifecycle management. Extending from `OwningComponentBase` (or using `OwningComponentBase`) lets an adaptor request scoped services and access the component lifecycle safely inside the adaptor component. + +-**Newtonsoft.Json** imports the Json.NET namespace (Newtonsoft.Json). It's commonly used for attributes such as `[JsonIgnore]` and for advanced JSON serialization scenarios; in these examples it's used to allow `[JsonIgnore]` on component parameters. + +### Step 4: Component Adaptor Accessing Multiple Scoped Services + +Extend `DataAdaptor` from `OwningComponentBase` to resolve multiple scoped services via `ScopedServices`. Retrieve services in `Read`, use them to fetch data, then apply `DataOperations` (search/sort/filter/skip/take) and return the results. ```csharp // CustomAdaptorComponent.razor @@ -465,15 +517,20 @@ The following sample code demonstrates `DataAdaptor` extended from `OwningCompon } ``` -You can find the complete code in the [Github](https://github.com/SyncfusionExamples/Binding-data-from-remote-service-to-blazor-data-grid/tree/master/CustomAdaptor-as-component). +For the complete working implementation of this example, refer to the [GitHub](https://github.com/SyncfusionExamples/Binding-data-from-remote-service-to-blazor-data-grid/tree/master/CustomAdaptor-as-component) repository. -## Handling searching operation +## Server-side data operations -When using a custom adaptor, the searching operation must be handled by overriding the `Read` or `ReadAsync` method of the `DataAdaptor` abstract class. The `DataManagerRequest` class provides Grid action details, including search criteria. +Custom binding supports data operations such as **searching**, **sorting**, **filtering**, **paging**, and **aggregation** when using a `CustomAdaptor`. These operations are implemented by overriding the `Read` or `ReadAsync` method of the `DataAdaptor` abstract class. -![Handling Searching in Custom Adaptor](../images/blazor-datagrid-searching-in-custom-adaptor.png) +### Implement Paging Feature -The following sample code demonstrates how to implement the searching operation for custom-bound data: +* Ensure the DataGrid has paging enabled with `AllowPaging="true"`. +* The `DataManagerRequest` class provides paging action details, including `skip` and `take` values, paging can be performed on a custom data source by using the built-in [PerformTake](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformTake__1_System_Linq_IQueryable___0__System_Int32_) and [PerformSkip](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformSkip__1_System_Linq_IQueryable___0__System_Int32_) methods from the `DataOperations` class. + +![Handling Paging in Custom Adaptor](../images/blazor-datagrid-paging-in-custom-adaptor.png) + +The following sample code demonstrates how to implement the paging operation for custom-bound data: ```cshtml @using Syncfusion.Blazor @@ -481,7 +538,7 @@ The following sample code demonstrates how to implement the searching operation @using Syncfusion.Blazor.Grids @using System.Collections - + @@ -519,10 +576,14 @@ The following sample code demonstrates how to implement the searching operation // Retrieve the data source. IEnumerable DataSource = Orders; - // Apply searching if search criteria are provided. - if (dm.Search != null && dm.Search.Count > 0) + // Apply paging by skipping and taking the specified number of records. + if (dm.Skip != 0) { - DataSource = DataOperations.PerformSearching(DataSource, dm.Search); + DataSource = DataOperations.PerformSkip(DataSource, dm.Skip); + } + if (dm.Take != 0) + { + DataSource = DataOperations.PerformTake(DataSource, dm.Take); } // Count the total number of records. @@ -535,15 +596,13 @@ The following sample code demonstrates how to implement the searching operation } ``` -## Handling filtering operation - -When using a custom adaptor, the filtering operation must be handled by overriding the `Read` or `ReadAsync` method of the `DataAdaptor` abstract class. The `DataManagerRequest` class provides Grid action details, as shown in the image below: +### Implement Filtering Feature -![Handling Filtering in Custom Adaptor](../images/blazor-datagrid-filtering-in-custom-adaptor.png) +* Add the [AllowFiltering](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_AllowFiltering) property to the ``. -Based on these Grid action details, a custom data source can be filtered using the built-in `PerformFiltering` method of the `DataOperations` class. +* The `DataManagerRequest` class provides filtered action details and custom data source can be filtered using the built-in [PerformFiltering](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformFiltering__1_System_Linq_IQueryable___0__System_Collections_Generic_List_Syncfusion_Blazor_Data_WhereFilter__System_String_) method available in the `DataOperations` class. -> You can also use your own method to perform the filtering operation and bind the resultant data to the Grid. +![Handling Filtering in Custom Adaptor](../images/blazor-datagrid-filtering-in-custom-adaptor.png) The following sample code demonstrates how to implement the filtering operation for custom-bound data: @@ -607,17 +666,14 @@ The following sample code demonstrates how to implement the filtering operation } ``` -## Handling sorting operation - -When using a custom adaptor, the sorting operation must be handled by overriding the `Read` or `ReadAsync` method of the `DataAdaptor` abstract class. The `DataManagerRequest` class provides Grid action details, as shown in the image below: - -![Handling Sorting in Custom Adaptor](../images/blazor-datagrid-sorting-in-custom-adaptor.png) +### Implement Searching Feature -Based on these Grid action details, a custom data source can be sorted using the built-in `PerformSorting` method of the `DataOperations` class. +* Ensure the toolbar includes the "Search" item. +* The `DataManagerRequest` class provides DataGrid action details, including search criteria. Based on the details, handle searching using[PerformSearching](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformSearching__1_System_Linq_IQueryable___0__System_Collections_Generic_List_Syncfusion_Blazor_Data_SearchFilter__) method from the [DataOperations](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html) class. -N> Alternatively, you can use your own method to perform the sorting operation and bind the resultant data to the Grid. +![Handling Searching in Custom Adaptor](../images/blazor-datagrid-searching-in-custom-adaptor.png) -The following sample code demonstrates how to implement the sorting operation for custom-bound data: +The following sample code demonstrates how to implement the searching operation for custom-bound data: ```cshtml @using Syncfusion.Blazor @@ -625,7 +681,7 @@ The following sample code demonstrates how to implement the sorting operation fo @using Syncfusion.Blazor.Grids @using System.Collections - + @@ -663,10 +719,10 @@ The following sample code demonstrates how to implement the sorting operation fo // Retrieve the data source. IEnumerable DataSource = Orders; - // Apply sorting if sort criteria are provided. - if (dm.Sorted != null && dm.Sorted.Count > 0) + // Apply searching if search criteria are provided. + if (dm.Search != null && dm.Search.Count > 0) { - DataSource = DataOperations.PerformSorting(DataSource, dm.Sorted); + DataSource = DataOperations.PerformSearching(DataSource, dm.Search); } // Count the total number of records. @@ -679,13 +735,15 @@ The following sample code demonstrates how to implement the sorting operation fo } ``` -## Handling paging operation +### Implement Sorting Feature -When using a custom adaptor, the paging operation must be handled by overriding the `Read` or `ReadAsync` method of the `DataAdaptor` abstract class. The `DataManagerRequest` class provides Grid action details, including skip and take values for paging. +* Add the [AllowSorting](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_AllowSorting) property to the ``. -![Handling Paging in Custom Adaptor](../images/blazor-datagrid-paging-in-custom-adaptor.png) +* The `DataManagerRequest` class provides sorted action details, and custom data source can be sorted based on these details by using the built-in [PerformSorting](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformSorting_System_Collections_IEnumerable_System_Collections_Generic_List_Syncfusion_Blazor_Data_SortedColumn__) method of the `DataOperations` class. -The following sample code demonstrates how to implement the paging operation for custom-bound data: +![Handling Sorting in Custom Adaptor](../images/blazor-datagrid-sorting-in-custom-adaptor.png) + +The following sample code demonstrates how to implement the sorting operation for custom-bound data: ```cshtml @using Syncfusion.Blazor @@ -693,7 +751,7 @@ The following sample code demonstrates how to implement the paging operation for @using Syncfusion.Blazor.Grids @using System.Collections - + @@ -731,14 +789,10 @@ The following sample code demonstrates how to implement the paging operation for // Retrieve the data source. IEnumerable DataSource = Orders; - // Apply paging by skipping and taking the specified number of records. - if (dm.Skip != 0) - { - DataSource = DataOperations.PerformSkip(DataSource, dm.Skip); - } - if (dm.Take != 0) + // Apply sorting if sort criteria are provided. + if (dm.Sorted != null && dm.Sorted.Count > 0) { - DataSource = DataOperations.PerformTake(DataSource, dm.Take); + DataSource = DataOperations.PerformSorting(DataSource, dm.Sorted); } // Count the total number of records. @@ -751,9 +805,11 @@ The following sample code demonstrates how to implement the paging operation for } ``` -## Handling grouping operation +### Implement Grouping Feature + +* Add the [AllowGrouping](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_AllowGrouping) property to the ``. -When using a Custom Adaptor, the grouping operation must be handled in the `Read` or `ReadAsync` method of the Custom Adaptor. +* The `DataManagerRequest` class provides grouping action details, and custom data source can be grouped using the [Group](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.DataUtil.html#Syncfusion_Blazor_Data_DataUtil_Group__1_System_Collections_IEnumerable_System_String_System_Collections_Generic_List_Syncfusion_Blazor_Data_Aggregate__System_Int32_System_Collections_Generic_IDictionary_System_String_System_String__System_Boolean_System_Boolean_) method of the `DataUtil` class. The following sample code demonstrates how to implement the grouping operation for custom-bound data: @@ -832,9 +888,11 @@ The following sample code demonstrates how to implement the grouping operation f } ``` -## Handling aggregates operation +### Implement Aggregates Feature + +* Add the [Aggregates](https://blazor.syncfusion.com/documentation/datagrid/aggregates) feature to the ``. -When using a Custom Adaptor, aggregates must be handled in the `Read` or `ReadAsync` method of the Custom Adaptor. +* The `DataManagerRequest` class provides aggregate action details, based on these details, a custom data source can be calculated using the built-in [PerformAggregation](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.DataUtil.html#Syncfusion_Blazor_Data_DataUtil_PerformAggregation_System_Collections_IEnumerable_System_Collections_Generic_List_Syncfusion_Blazor_Data_Aggregate__) method of the `DataUtil` class. The following sample code demonstrates how to implement aggregates for custom-bound data: @@ -955,6 +1013,8 @@ The following sample code demonstrates how to implement aggregates for custom-bo You can find the complete code in the [Github](https://github.com/SyncfusionExamples/Binding-data-from-remote-service-to-blazor-data-grid/tree/master/CustomAdaptor). +> Alternatively, a custom method can be used to perform all data operations and the resulting data can be bound to the DataGrid. + ## Handling CRUD operations The CRUD operations for custom-bound data in the Syncfusion® Blazor DataGrid can be implemented by overriding the following CRUD methods of the **DataAdaptor** abstract class: @@ -964,7 +1024,7 @@ The CRUD operations for custom-bound data in the Syncfusion® Blazor DataGrid](https://www.syncfusion.com/blazor-components/blazor-datagrid) feature tour page for its groundbreaking feature representations. You can also explore the [Syncfusion® Blazor DataGrid example](https://blazor.syncfusion.com/demos/datagrid/overview?theme=bootstrap5) to understand how to present and manipulate data. @@ -1110,16 +1172,16 @@ You can find the complete code in the [Github](https://github.com/SyncfusionExam The Syncfusion® Blazor DataGrid allows you to send custom parameters with each data request. This is particularly useful when you need to pass additional information (e.g., user role, token, or filters) to the server for enhanced processing logic. -You can achieve this by using the [Query](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Query) property of the grid along with the `AddParams` method of the `Query` class. +This can be achieved by using [Query](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Query) property of the DataGrid along with the `AddParams` method of the `Query` class. -To enable custom parameters in data requests for the Grid, follow these steps: +To enable custom parameters in data requests for the DataGrid, follow these steps: -1. **Bind the Query Object to the Grid:** +1. **Bind the Query Object to the DataGrid:** Assign the initialized `Query` object to the DataGrid’s `Query` property. 2. **Initialize the Query Object:** Create a new instance of the `Query` class and use the `AddParams` method to add your custom parameters. 3. **Access Parameters in the Custom Adaptor:** - In your custom adaptor, access the parameters via `Params` and use them as needed for server-side logic. + In the custom adaptor, access the parameters via `Params` and use them as needed for server-side logic. The following example demonstrates how to send additional parameters to the server. diff --git a/blazor/datagrid/events.md b/blazor/datagrid/events.md index fc40826821..da86d107bb 100644 --- a/blazor/datagrid/events.md +++ b/blazor/datagrid/events.md @@ -9,7 +9,7 @@ documentation: ug # Events in Blazor DataGrid -This section lists the events available in the Syncfusion® Blazor DataGrid and when they are triggered for various Grid actions. +This section lists the events available in the Syncfusion® Blazor DataGrid and when they are triggered for various DataGrid actions. Events are assigned to the Grid by using a single **GridEvents** component. When configuring Grid events, specify the generic type via the **TValue** parameter to match the Grid’s data model. @@ -17,7 +17,7 @@ N> All events should be configured within a single **GridEvents** component. ## OnActionBegin -[OnActionBegin](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnActionBegin) triggers when a Grid action starts ([sorting](https://blazor.syncfusion.com/documentation/datagrid/sorting), [filtering](https://blazor.syncfusion.com/documentation/datagrid/filtering), [paging](https://blazor.syncfusion.com/documentation/datagrid/paging), [grouping](https://blazor.syncfusion.com/documentation/datagrid/grouping), [editing](https://blazor.syncfusion.com/documentation/datagrid/editing), and more). Use this to inspect or adjust action parameters before execution. +[OnActionBegin](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnActionBegin) triggers when a DataGrid action starts ([sorting](https://blazor.syncfusion.com/documentation/datagrid/sorting), [filtering](https://blazor.syncfusion.com/documentation/datagrid/filtering), [paging](https://blazor.syncfusion.com/documentation/datagrid/paging), [grouping](https://blazor.syncfusion.com/documentation/datagrid/grouping), [editing](https://blazor.syncfusion.com/documentation/datagrid/editing), and more). Use this to inspect or adjust action parameters before execution. ```cshtml @using Syncfusion.Blazor.Grids @@ -109,7 +109,7 @@ N> All events should be configured within a single **GridEvents** component. ## OnActionFailure -[OnActionFailure](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnActionFailure) triggers when a Grid action fails. Use it to log or display error details. In the following example, an invalid URL is configured to demonstrate the failure event. +[OnActionFailure](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnActionFailure) triggers when a DataGrid action fails. Use it to log or display error details. In the following example, an invalid URL is configured to demonstrate the failure event. ```cshtml @using Syncfusion.Blazor @@ -195,7 +195,7 @@ N> All events should be configured within a single **GridEvents** component. ## Created -[Created](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_Created) triggers once the Grid is created. Use it for one-time initialization that depends on the Grid being ready. +[Created](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_Created) triggers once the Grid is created. Use it for one-time initialization that depends on the DataGrid being ready. ```cshtml @using Syncfusion.Blazor.Grids @@ -240,7 +240,7 @@ N> All events should be configured within a single **GridEvents** component. ## OnLoad -[OnLoad](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnLoad) triggers before the Grid rendering starts, allowing customization of Grid properties prior to rendering. +[OnLoad](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnLoad) triggers before the DataGrid rendering starts, allowing customization of DataGrid properties prior to rendering. ```cshtml @using Syncfusion.Blazor.Grids @@ -285,7 +285,7 @@ N> All events should be configured within a single **GridEvents** component. ## Destroyed -[Destroyed](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_Destroyed) event triggers when the Grid is destroyed. Use it to confirm that the Grid gets completely destroyed. +[Destroyed](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_Destroyed) event triggers when the DataGrid is destroyed. Use it to confirm that the DataGrid gets completely destroyed. ```cshtml @using Syncfusion.Blazor.Grids @@ -329,7 +329,7 @@ N> All events should be configured within a single **GridEvents** component. ## OnDataBound -[OnDataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnDataBound) triggers before data is bound to the Grid. Use it to adjust query/columns based on incoming data. +[OnDataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_OnDataBound) triggers before data is bound to the DataGrid. Use it to adjust query/columns based on incoming data. ```cshtml @using Syncfusion.Blazor.Grids @@ -374,7 +374,7 @@ N> All events should be configured within a single **GridEvents** component. ## DataBound -[DataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_DataBound) triggers after the data source is populated in the Grid. Use it for final UI adjustments after binding. +[DataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_DataBound) triggers after the data source is populated in the DataGrid. Use it for final UI adjustments after binding. ```cshtml @using Syncfusion.Blazor.Grids @@ -419,7 +419,7 @@ N> All events should be configured within a single **GridEvents** component. ## RowDataBound -[RowDataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_RowDataBound) triggers before each row element is appended to the Grid. Use it to style or transform row content. +[RowDataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_RowDataBound) triggers before each row element is appended to the DataGrid. Use it to style or transform row content. ```cshtml @using Syncfusion.Blazor.Grids @@ -1004,7 +1004,7 @@ N> All events should be configured within a single **GridEvents** component. ## QueryCellInfo -[QueryCellInfo](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_QueryCellInfo) triggers before a cell element is appended to the Grid. Use it to customize cell content, attributes, or styles. +[QueryCellInfo](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_QueryCellInfo) triggers before a cell element is appended to the DataGrid. Use it to customize cell content, attributes, or styles. ```cshtml @using Syncfusion.Blazor.Grids diff --git a/blazor/datagrid/how-to/css-isolation-for-grid.md b/blazor/datagrid/how-to/css-isolation-for-grid.md index 995a31d741..4486f820c1 100644 --- a/blazor/datagrid/how-to/css-isolation-for-grid.md +++ b/blazor/datagrid/how-to/css-isolation-for-grid.md @@ -11,7 +11,7 @@ documentation: ug CSS isolation allows defining component-specific styles by creating a **.razor.css** file that matches the name of the **.razor** file. This ensures that the styles apply only to the intended component without affecting other parts of the application. For example, to apply styles to an **Index** component, create a file named **Index.razor.css** in the same folder as **Index.razor**. -To enable CSS isolation for the Grid, it is recommended to wrap the `SfGrid` inside a standard HTML div element (optionally with a custom class). This setup helps properly scope the styles when using the **::deep** combinator, which is required to target nested child elements rendered by the Grid within isolated styles. +To enable CSS isolation for the DataGrid, it is recommended to wrap the `SfGrid` inside a standard HTML div element (optionally with a custom class). This setup helps properly scope the styles when using the **::deep** combinator, which is required to target nested child elements rendered by the Grid within isolated styles. Below is an example of implementing a simple Grid inside the **Index.razor** file: diff --git a/blazor/datagrid/how-to/customize-empty-grid-display-message.md b/blazor/datagrid/how-to/customize-empty-grid-display-message.md index 6bcae4a3c4..f7fb4baa59 100644 --- a/blazor/datagrid/how-to/customize-empty-grid-display-message.md +++ b/blazor/datagrid/how-to/customize-empty-grid-display-message.md @@ -9,7 +9,7 @@ documentation: ug # Customize the empty record template in Blazor DataGrid -The empty record template in the Syncfusion® Blazor DataGrid enables rendering custom content such as images, text, or other components when the Grid has no records to display. This replaces the default “No records to display” message. +The empty record template in the Syncfusion® Blazor DataGrid enables rendering custom content such as images, text, or other components when the DataGrid has no records to display. This replaces the default “No records to display” message. Define the template using the [EmptyRecordTemplate](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridTemplates.html#Syncfusion_Blazor_Grids_GridTemplates_EmptyRecordTemplate) within ``. In Blazor, this is a Razor fragment (RenderFragment), allowing any valid Razor markup or components. The empty record template is shown whenever the data source results in zero rows, including initial load, after filtering or searching yields no matches, or after deletions remove all rows. {% tabs %} diff --git a/blazor/datagrid/how-to/define-events-programmatically.md b/blazor/datagrid/how-to/define-events-programmatically.md index 1ff59c514e..8df40d8df5 100644 --- a/blazor/datagrid/how-to/define-events-programmatically.md +++ b/blazor/datagrid/how-to/define-events-programmatically.md @@ -9,9 +9,9 @@ documentation: ug # Define Grid events programmatically in Blazor DataGrid -In the Syncfusion® Blazor DataGrid, events are typically defined using the [GridEvents](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#) child Razor component. As an alternative, Grid events can also be configured programmatically by accessing the Grid instance through a component reference. This approach is useful when events need to be assigned dynamically during the application lifecycle. +In the Syncfusion® Blazor DataGrid, events are typically defined using the [GridEvents](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#) child Razor component. As an alternative, DataGrid events can also be configured programmatically by accessing the DataGrid instance through a component reference. This approach is useful when events need to be assigned dynamically during the application lifecycle. -> Note: Assigning **Grid.GridEvents** programmatically replaces any events declared via the `` markup for that Grid instance. +> Note: Assigning **Grid.GridEvents** programmatically replaces any events declared via the `` markup for that DataGrid instance. To define events programmatically: diff --git a/blazor/datagrid/how-to/enable-or-disable-grid.md b/blazor/datagrid/how-to/enable-or-disable-grid.md index d4fc5748a8..04b44c19aa 100644 --- a/blazor/datagrid/how-to/enable-or-disable-grid.md +++ b/blazor/datagrid/how-to/enable-or-disable-grid.md @@ -9,11 +9,11 @@ documentation: ug # Enable or disable Blazor DataGrid and its actions -The Syncfusion® Blazor DataGrid can be dynamically enabled or disabled by toggling a button. This is useful to restrict user interaction with the Grid during certain application states or processes. The approach below disables interaction at the UI level by applying a CSS class to a wrapper and setting an attribute for styling or accessibility. +The Syncfusion® Blazor DataGrid can be dynamically enabled or disabled by toggling a button. This is useful to restrict user interaction with the DataGrid during certain application states or processes. The approach below disables interaction at the UI level by applying a CSS class to a wrapper and setting an attribute for styling or accessibility. To implement this: -* Define a CSS class on the wrapper (`.grid-wrapper.disabled`) to visually and functionally disable the Grid. +* Define a CSS class on the wrapper (`.grid-wrapper.disabled`) to visually and functionally disable the DataGrid. ```css .grid-wrapper.disabled { @@ -23,8 +23,8 @@ To implement this: cursor: not-allowed; } ``` -* Bind a boolean flag (`isGridDisabled`) to update the wrapper class and an attribute (for example, `aria-disabled`) on the Grid or wrapper. -* Use a button to toggle the flag and control the Grid state. +* Bind a boolean flag (`isGridDisabled`) to update the wrapper class and an attribute (for example, `aria-disabled`) on the DataGrid or wrapper. +* Use a button to toggle the flag and control the DataGrid state. {% tabs %} {% highlight razor tabtitle="Index.razor" %} diff --git a/blazor/datagrid/how-to/hide-the-built-in-spinner-and-show-a-custom-loading-spinner-in-blazor-datagrid.md b/blazor/datagrid/how-to/hide-the-built-in-spinner-and-show-a-custom-loading-spinner-in-blazor-datagrid.md index 390095fcc8..7bf32978f4 100644 --- a/blazor/datagrid/how-to/hide-the-built-in-spinner-and-show-a-custom-loading-spinner-in-blazor-datagrid.md +++ b/blazor/datagrid/how-to/hide-the-built-in-spinner-and-show-a-custom-loading-spinner-in-blazor-datagrid.md @@ -15,7 +15,7 @@ The Syncfusion® Blazor DataGrid displays it This customization involves the following steps: * Create a custom overlay spinner container and position it over the DataGrid. -* Hide the built‑in Grid spinner by applying CSS. +* Hide the built‑in DataGrid spinner by applying CSS. * Using the [DataBound](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEvents-1.html#Syncfusion_Blazor_Grids_GridEvents_1_DataBound) event to detect when the Grid has finished loading and hide the custom spinner. The `DataBound` event is triggered after the DataGrid has fully bound its DataSource and completed UI rendering, making it the appropriate event for removing the custom loading indicator. @@ -50,7 +50,7 @@ public Task DataBoundHandler() } ``` -### Wrap the Grid and apply the logic +### Wrap the DataGrid and apply the logic {% tabs %} {% highlight razor tabtitle="Index.razor" %} diff --git a/blazor/datagrid/how-to/render-grid-inside-tab-with-specific-height.md b/blazor/datagrid/how-to/render-grid-inside-tab-with-specific-height.md index 4d268b185a..53b40c04d2 100644 --- a/blazor/datagrid/how-to/render-grid-inside-tab-with-specific-height.md +++ b/blazor/datagrid/how-to/render-grid-inside-tab-with-specific-height.md @@ -9,9 +9,9 @@ documentation: ug # Blazor DataGrid inside the tab with specific height -By default, the Syncfusion® Blazor DataGrid occupies the full size of its parent element when the Grid [Height](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Height) and [Width](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Width) properties are set to 100%. When placing the same Grid inside the [SfTab](https://blazor.syncfusion.com/documentation/tabs/getting-started-webapp) component, however, it may consider the entire page height and render without a horizontal scrollbar. +By default, the Syncfusion® Blazor DataGrid occupies the full size of its parent element when the DataGrid [Height](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Height) and [Width](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.SfGrid-1.html#Syncfusion_Blazor_Grids_SfGrid_1_Width) properties are set to 100%. When placing the same DataGrid inside the [SfTab](https://blazor.syncfusion.com/documentation/tabs/getting-started-webapp) component, however, it may consider the entire page height and render without a horizontal scrollbar. -To ensure the Grid scrolls within the Tab content area (keeping the tab header fixed), override the Tab content height with CSS so the Grid receives a well-defined parent height. +To ensure the DataGrid scrolls within the `SfTab` content area (keeping the tab header fixed), override the `SfTab` content height with CSS so the DataGrid receives a well-defined parent height. > Notes: - The parent container of the Tab must have an explicit height (for example, a fixed pixel height or a flex container with a resolved height). diff --git a/blazor/datagrid/how-to/resize-grid-in-various-dimension.md b/blazor/datagrid/how-to/resize-grid-in-various-dimension.md index b7a850fc5c..b675e63325 100644 --- a/blazor/datagrid/how-to/resize-grid-in-various-dimension.md +++ b/blazor/datagrid/how-to/resize-grid-in-various-dimension.md @@ -9,10 +9,10 @@ documentation: ug # Resize the Blazor DataGrid in various dimensions -The Syncfusion® Blazor DataGrid fills its parent container. Therefore, changing the parent’s dimensions adjusts the Grid size automatically. This example shows how to resize the Grid externally using inputs and a button to modify the parent container’s width and height. +The Syncfusion® Blazor DataGrid supports dynamic resizing to enhance data presentation across different layouts. The DataGrid can be resized by adjusting the dimensions of its parent container. This example shows how to resize the Grid externally using inputs and a button to modify the parent container’s width and height. This will effectively resize the DataGrid along with its parent container. -> - When using `Height="100%"` for the Grid, ensure the parent container has an explicit height (pixels or a resolved flex height). -> - Setting `Width="100%"` on the Grid ensures it follows the parent width exactly. +> - When using `Height="100%"` for the DataGrid, ensure the parent container has an explicit height (pixels or a resolved flex height). +> - Setting `Width="100%"` on the DataGrid ensures it follows the parent width exactly. {% tabs %} {% highlight razor tabtitle="Index.razor" %} diff --git a/blazor/datagrid/how-to/send-context-as-additional-parameters-from-events.md b/blazor/datagrid/how-to/send-context-as-additional-parameters-from-events.md index 0c9e9fdc70..ab17310fcb 100644 --- a/blazor/datagrid/how-to/send-context-as-additional-parameters-from-events.md +++ b/blazor/datagrid/how-to/send-context-as-additional-parameters-from-events.md @@ -9,11 +9,11 @@ documentation: ug # Sending Context as additional Parameters in Blazor DataGrid Events -The Syncfusion® Blazor DataGrid supports passing the current row context to event handlers. This approach is useful for updating Grid fields based on interactions inside the edit dialog, enabling immediate, in-place updates to the bound data. +The Syncfusion® Blazor DataGrid supports passing the current row context to event handlers. This approach is useful for updating DataGrid fields based on interactions inside the edit dialog, enabling immediate, in-place updates to the bound data. To implement this, follow these steps: - 1. Place the [ComboBox](https://blazor.syncfusion.com/documentation/combobox/getting-started-with-web-app) inside the Grid's `GridEditSettings.Template` to customize the edit form. + 1. Place the [ComboBox](https://blazor.syncfusion.com/documentation/combobox/getting-started-with-web-app) inside the DataGrid's [GridEditSettings.Template](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridEditSettings.html#Syncfusion_Blazor_Grids_GridEditSettings_Template) to customize the edit form. 2. Bind the ComboBox’s `ValueChange` event to a handler method. @@ -21,7 +21,7 @@ To implement this, follow these steps: * args: Event arguments that include the new ComboBox value and the selected item. * context: The template context cast to the row type (Order) and stored in a local variable (order). - 4. Inside the handler, update properties of the current row (for example, ShipCity and ShipCountry) based on the selected ComboBox value. Because the Grid is bound to the same data object instance, changes are reflected immediately in the Grid UI. + 4. Inside the handler, update properties of the current row (for example, ShipCity and ShipCountry) based on the selected ComboBox value. Because the DataGrid is bound to the same data object instance, changes are reflected immediately in the DataGrid UI. {% tabs %} {% highlight razor tabtitle="Index.razor" %} diff --git a/blazor/datagrid/how-to/using-dictionary-values-in-grid-datasource.md b/blazor/datagrid/how-to/using-dictionary-values-in-grid-datasource.md index eb292c1e99..a52f26a08e 100644 --- a/blazor/datagrid/how-to/using-dictionary-values-in-grid-datasource.md +++ b/blazor/datagrid/how-to/using-dictionary-values-in-grid-datasource.md @@ -11,7 +11,7 @@ documentation: ug The Syncfusion® Blazor DataGrid can display values from a dictionary by using a column [Template](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Grids.GridColumn.html#Syncfusion_Blazor_Grids_GridColumn_Template). Because a dictionary is not a scalar field, the column cannot bind directly to it. Instead, the template accesses the dictionary via the row item and renders the corresponding value by matching the row’s key with the dictionary key. -In the following example, the **ShipName** data is stored as a **Dictionary** and accessed inside the GridColumn template using the KeyValuePair type. The row’s **OrderID** is compared with the dictionary key, and the matching value is displayed. This approach lets each row retrieve and render the appropriate dictionary value from a shared lookup at runtime. For efficiency, ensure that a consistent key (such as the primary key) is used for the lookup, and consider a direct lookup pattern when rendering complex templates. +In the following example, the **ShipName** data is stored as a **Dictionary** and accessed inside the `GridColumn` template using the `KeyValuePair` type. The row’s **OrderID** is compared with the dictionary key, and the matching value is displayed. This approach lets each row retrieve and render the appropriate dictionary value from a shared lookup at runtime. For efficiency, ensure that a consistent key (such as the primary key) is used for the lookup, and consider a direct lookup pattern when rendering complex templates. {% tabs %} {% highlight razor tabtitle="Index.razor" %} From 19d81dcb6d3a9e845bdb8f681be39c28a9839812 Mon Sep 17 00:00:00 2001 From: farveensulthana Date: Tue, 7 Apr 2026 18:37:17 +0530 Subject: [PATCH 2/2] 1015395: ImageErrors --- .../connecting-to-adaptors/custom-adaptor.md | 10 ++++++---- .../connecting-to-adaptors/graphql-adaptor.md | 2 +- ...azor-datagrid-paging-in-custom-adaptor.jpeg | Bin 0 -> 100448 bytes ...r-datagrid-searching-in-custom-adaptor.jpeg | Bin 0 -> 101275 bytes 4 files changed, 7 insertions(+), 5 deletions(-) create mode 100644 blazor/datagrid/images/blazor-datagrid-paging-in-custom-adaptor.jpeg create mode 100644 blazor/datagrid/images/blazor-datagrid-searching-in-custom-adaptor.jpeg diff --git a/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md b/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md index b17ecdc8b3..29edf07bc5 100644 --- a/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md +++ b/blazor/datagrid/connecting-to-adaptors/custom-adaptor.md @@ -1,13 +1,15 @@ --- layout: post -title: Bind data and perform CRUD actions with CustomAdaptor in Syncfusion Blazor DataGrid -description: Learn all about Custom Binding in the Syncfusion Blazor DataGrid and much more. +title: Blazor Data Grid with Custom Adaptor | Syncfusion +description: Learn about Custom Data Binding and perform CRUD operations using CustomAdaptor in Syncfusion Blazor DataGrid. platform: Blazor control: DataGrid keywords: adaptors, CustomAdaptor, custom adaptor, remotedata, custombinding, custom binding documentation: ug --- +Learn about Custom Data Binding and perform CRUD operations using CustomAdaptor in Syncfusion Blazor DataGrid. + # Custom Binding in Blazor DataGrid Custom binding in the Syncfusion® Blazor [SfDataManager](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Data.SfDataManager.htm) provides a mechanism to implement custom logic for data retrieval and manipulation. It allows defining how data operations are executed by creating a [CustomAdaptor](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.Adaptors.html#Syncfusion_Blazor_Adaptors_CustomAdaptor) that overrides default behavior. Instead of creating an entirely new adaptor from scratch, Custom Adaptor extends and modifies the behavior of existing adaptors by intercepting and customizing HTTP requests and responses. @@ -528,7 +530,7 @@ Custom binding supports data operations such as **searching**, **sorting**, **fi * Ensure the DataGrid has paging enabled with `AllowPaging="true"`. * The `DataManagerRequest` class provides paging action details, including `skip` and `take` values, paging can be performed on a custom data source by using the built-in [PerformTake](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformTake__1_System_Linq_IQueryable___0__System_Int32_) and [PerformSkip](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformSkip__1_System_Linq_IQueryable___0__System_Int32_) methods from the `DataOperations` class. -![Handling Paging in Custom Adaptor](../images/blazor-datagrid-paging-in-custom-adaptor.png) +![Handling Paging in Custom Adaptor](../images/blazor-datagrid-paging-in-custom-adaptor.jpeg) The following sample code demonstrates how to implement the paging operation for custom-bound data: @@ -671,7 +673,7 @@ The following sample code demonstrates how to implement the filtering operation * Ensure the toolbar includes the "Search" item. * The `DataManagerRequest` class provides DataGrid action details, including search criteria. Based on the details, handle searching using[PerformSearching](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html#Syncfusion_Blazor_DataOperations_PerformSearching__1_System_Linq_IQueryable___0__System_Collections_Generic_List_Syncfusion_Blazor_Data_SearchFilter__) method from the [DataOperations](https://help.syncfusion.com/cr/blazor/Syncfusion.Blazor.DataOperations.html) class. -![Handling Searching in Custom Adaptor](../images/blazor-datagrid-searching-in-custom-adaptor.png) +![Handling Searching in Custom Adaptor](../images/blazor-datagrid-searching-in-custom-adaptor.jpeg) The following sample code demonstrates how to implement the searching operation for custom-bound data: diff --git a/blazor/datagrid/connecting-to-adaptors/graphql-adaptor.md b/blazor/datagrid/connecting-to-adaptors/graphql-adaptor.md index a7a720844d..f0329fa9f9 100644 --- a/blazor/datagrid/connecting-to-adaptors/graphql-adaptor.md +++ b/blazor/datagrid/connecting-to-adaptors/graphql-adaptor.md @@ -1,6 +1,6 @@ --- layout: post -title: Blazor Data Grid with GraphQL using Custom Adaptor | Syncfusion +title: Blazor Data Grid with GraphQL | Syncfusion description: Build Blazor apps with GraphQL and Syncfusion Data Grid to enable CRUD, filtering, sorting, paging, and grouping for seamless data operations. control: DataGrid platform: blazor diff --git a/blazor/datagrid/images/blazor-datagrid-paging-in-custom-adaptor.jpeg b/blazor/datagrid/images/blazor-datagrid-paging-in-custom-adaptor.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..8a35e265ba72833f4d246764f75d1338273b1f39 GIT binary patch literal 100448 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

8lmV!U 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 AcmMzZ literal 0 HcmV?d00001 diff --git a/blazor/datagrid/images/blazor-datagrid-searching-in-custom-adaptor.jpeg b/blazor/datagrid/images/blazor-datagrid-searching-in-custom-adaptor.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..13caf1028b6dc5fc7d4cda473b67c91003157fa1 GIT binary patch literal 101275 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 HzenI-q#={2 literal 0 HcmV?d00001