Essential Studio for Blazor Release Notes

v17.2.49
September 3, 2019

AccumulationChart

Breaking Changes

Now, the following tags have been renamed.

Previous Name Modified Name
AccumulationAnnotationSettings AccumulationChartAnnotations
AccumulationChartAccumulationAnnotation AccumulationChartAnnotation
AccumualationTooltipFont AccumulationChartTooltipTextStyle

DataManager

Features

  • Added Web API batch edit handling support.

Dialog

Bug Fixes

  • F146723, F146628 - Resolved the delay rendering while a component is rendered using the child-content and template approach.

Grid

Bug Fixes

  • 246248 - Script error thrown when DataSource is null and while performing search in the MultiSelect component has been resolved.
  • F146875 - Multiple checkbox selection is not working when rowSelected event is used in blazor grid has been resolved.
  • 243156 - Data is not getting updated for first time on external action has been resolved.
  • F146396 - Template column is not displayed when its DataType is TimeSpan has been resolved.
  • F146078 - Unable to use read-only properties inside column template is resolved
  • Script error has been fixed while using rowSelected event.
  • Column dataSource provided as WebAPIAdpator was converted to BlazorAdaptor during initial rendering has been fixed.
  • F146980 - Incorrect GUID filter query string generation is now resolved.
  • 240240, 245760 - conditional formatting is not applied properly to all the columns has been resolved.
  • F146668 - Dictionary values are not properly serialized in grid templates has been resolved.

Features

  • Data annotation support has been added. Now you can use various attributes to define grid column and other options. More information can be find here.

Breaking Changes

  • Now you can define filter column declaratively. Also now use GridFilterColumn instead of PredicateModel.

Previous

 
@{
 List<PredicateModel> FilterColumns = new List<PredicateModel>();
 FilterColumns.Add(new PredicateModel() { Field = "CustomerID", Operator = Operator.StartsWith, Value = "ANANTR" });
}
<EjsGrid DataSource="@Orders" AllowFiltering="true">
 <GridFilterSettings Columns="@FilterColumns"></GridFilterSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>

Now

<EjsGrid DataSource="@Orders" AllowFiltering="true">
 <GridFilterSettings>
 <GridFilterColumns>
 <GridFilterColumn Field="CustomerID" Value="@("A")" Operator=Operator.StartsWith>
 </GridFilterColumn>
 </GridFilterColumns>
 </GridFilterSettings> 
 ...
 </EjsGrid>
  • Now you can define filter column declaratively. Also now use GridSortColumn instead of SortDescriptorModel.

Previous

 
@{
 List<SortDescriptorModel> SortedColumns = new List<SortDescriptorModel>();
 SortedColumns.Add(new SortDescriptorModel() { Field = "OrderDate", Direction = SortDirection.Ascending });
 SortedColumns.Add(new SortDescriptorModel() { Field = "Freight", Direction = SortDirection.Descending });
}
<EjsGrid DataSource="@Orders" AllowSorting="true">
 <GridSortSettings Columns="@SortedColumns"></GridSortSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>

Now

<EjsGrid DataSource="@Orders" AllowSorting="true">
 <GridSortSettings>
 <GridSortColumns>
 <GridSortColumn Field="OrderDate" Direction=SortDirection.Ascending>
 </GridSortColumn>
 <GridSortColumn Field="Freight" Direction=SortDirection.Descending>
 </GridSortColumn>
 </GridSortColumns>
 </GridSortSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>
  • Now you can define command column declaratively. Also now use GridCommandColumn instead of CommandModel.

Previous

 
@{
 List<CommandModel> Commands = new List<CommandModel>();
 Commands.Add(new CommandModel() { Type = CommandButtonType.Edit, ButtonOption = new CommandButtonOptions() { IconCss = "e-icons e-edit", CssClass = "e-flat" } });
 Commands.Add(new CommandModel() { Type = CommandButtonType.Delete, ButtonOption = new CommandButtonOptions() { IconCss = "e-icons e-delete", CssClass = "e-flat" } });
 Commands.Add(new CommandModel() { Type = CommandButtonType.Save, ButtonOption = new CommandButtonOptions() { IconCss = "e-icons e-save", CssClass = "e-flat" } });
 Commands.Add(new CommandModel() { Type = CommandButtonType.Cancel, ButtonOption = new CommandButtonOptions() { IconCss = "e-icons e-cancel", CssClass = "e-flat" } });
}
 
<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn HeaderText="Manage Records" Commands="@Commands" Width="150"></GridColumn>
 </GridColumns>
</EjsGrid>

Now

<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn HeaderText="Manage Records" Width="150">
 <GridCommandColumns>
 <GridCommandColumn Type="CommandButtonType.Edit" ButtonOption="@(new CommandButtonOptions() { IconCss = "e-icons e-edit", CssClass = "e-flat" })"></GridCommandColumn>
 <GridCommandColumn Type="CommandButtonType.Delete" ButtonOption="@(new CommandButtonOptions() { IconCss = "e-icons e-delete", CssClass = "e-flat" })"></GridCommandColumn>
 <GridCommandColumn Type="CommandButtonType.Save" ButtonOption="@(new CommandButtonOptions() { IconCss = "e-icons e-update", CssClass = "e-flat" })"></GridCommandColumn>
 <GridCommandColumn Type="CommandButtonType.Cancel" ButtonOption="@(new CommandButtonOptions() { IconCss = "e-icons e-cancel-icon", CssClass = "e-flat" })"></GridCommandColumn>
 </GridCommandColumns>
 </GridColumn>
 </GridColumns>
</EjsGrid>
  • The type of EditType property in GridColumn is modified from string type to Enum type.

Previous

<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn Field=@nameof(OrdersDetails.OrderDate) EditType="date"></GridColumn>
 ...
 </GridColumns>
</EjsGrid>

Now

<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn Field=@nameof(OrdersDetails.OrderDate) EditType=EditType.Date></GridColumn>
 ...
 </GridColumns>
</EjsGrid>
  • The Type property in GridColumn is modified from string type to Enum type.

Previous

<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn Field=@nameof(OrdersDetails.OrderDate) Type="date"></GridColumn>
 ...
 </GridColumns>
</EjsGrid>

Now

<EjsGrid DataSource="@Orders">
 <GridColumns>
 ...
 <GridColumn Field=@nameof(OrdersDetails.OrderDate) Type=ColumnType.Date></GridColumn>
 ...
 </GridColumns>
</EjsGrid>
  • The Operator property in GridFilterSettings is modified from string type to Enum type.

Previous

 
@{
 List<PredicateModel> FilterColumns = new List<PredicateModel>();
 FilterColumns.Add(new PredicateModel() { Field = "CustomerID", Operator = "StartsWith", Value = "ANANTR" });
}
<EjsGrid DataSource="@Orders" AllowFiltering="true">
 <GridFilterSettings Columns="@FilterColumns"></GridFilterSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>

Now

@using Syncfusion.EJ2.Blazor

<EjsGrid DataSource="@Orders" AllowFiltering="true">
 <GridFilterSettings>
 <GridFilterColumns>
 <GridFilterColumn Field="CustomerID" Value="@("ANANTR")" Operator=Operator.StartsWith>
 </GridFilterColumn>
 </GridFilterColumns>
 </GridFilterSettings> 
 ...
 </EjsGrid>
  • The Operator property in GridSearchSettings is modified from string type to Enum type.

Previous

 
<EjsGrid DataSource="@Orders">
 <GridSearchSettings Fields="@(new string[] { "CustomerID" })" Operator="Contains" Key="anton"></GridSearchSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>

Now

@using Syncfusion.EJ2.Blazor

<EjsGrid DataSource="@Orders">
 <GridSearchSettings Fields="@(new string[] { "CustomerID" })" Operator= Operator.Contains Key="anton"></GridSearchSettings>
 <GridColumns>
 ...
 </GridColumns>
</EjsGrid>

Bug Fixes

  • 244943 - Script error throws while changing the datasource in Menu component has been resolved.

RichTextEditor

Bug Fixes

  • #244622 - Resolved the issue with passing the enum type as a function parameter.

Schedule

Bug Fixes

  • 146574, 146842 - ActionCompleted event will now properly trigger when performing CRUD actions.
  • 242728 - The issue with navigating to upcoming weeks while using Scheduler client-side events has been fixed.
  • 146901 - The SelectedDateChanged event triggers twice has been fixed.
  • 241996 - Provided the Dragged and Resized events support now.
  • 245379 - The issue with tracing ctrl key press on cell click has been fixed.

Tab

Bug Fixes

  • 245937 - The issue with Selected and Selecting event triggering multiple times has been fixed.

TreeGrid

Bug Fixes

  • 245760 - Conditional Formatting works fine using RowDataBound event.