Essential Studio for Blazor Release Notes

v20.4.38
December 21, 2022

Common

Features

  • Provided .NET 7 support for all Syncfusion Blazor components.
  • The following new components have been added to Blazor.
    • Media Query
    • Mention
    • Rating
  • The following components have been developed to meet industry standards and are now marked production-ready:
    • AppBar
    • Floating Action Button (FAB)
    • Message
    • Speed Dial
  • Included Mention, Rating and Media query components in Blazor CRG.

Breaking changes

  • Syncfusion Blazor components will no longer support .NET 3.1 as it has reached its end of support cycle. We recommend upgrading to .NET 6 to take advantage of new features and components. If you are unable to update to .NET 6, you may continue to use version 20.3 in your .NET 3.1 projects.

  • If you are using Syncfusion Blazor components without first registering a license, a license dialog will appear after a certain limit of usage, preventing further interaction in the app. Please make sure to register a valid license in order to continue using the Syncfusion Blazor components without interruption.

Calendar

Features

  • F170233, SF-386994 - The support for the new “DateOnly” struct was added in .NET 7.0 projects.

Chart

Features

  • Provided support for a new spline range area chart type.
  • Provided support to format data labels in the chart, and it supports all global formats.
  • Provided support for dashed legends for dashed line series.
  • #I412040- Provided support to disable hover effect for accumulation chart while showing tooltip.

Bug Fixes

  • #I416394 - Dynamic series update now works properly.
  • #I416183 - IPad’s page scrolling issue has been resolved.

Context Menu

Bug fixes

  • #F422142 - “Script errors thrown in context menu while using pivot component when hovering” has been fixed.

DatePicker

Features

  • F170233, SF-386994 - The support for the new “DateOnly” struct was added in .NET 7.0 projects.

  • We have added support for “Masked Date input”, a feature that helps users enter formatted date values. This feature enforces a specific date format, such as “dd/MM/yy” or “MM/dd/yyyy”, and ensures that only valid date values are accepted.

DateRangePicker

Bug fixes

#I422803 - The issue with “The component is not working when using two-way binding with the MaxDays property.” has been resolved.

Features

  • F170233, SF-386994 - The support for the new “DateOnly” struct was added in .NET 7.0 projects.

DateTimePicker

Features

  • We have added support for “Masked DateTime input”, a feature that helps users enter formatted datetime values. This feature enforces a specific datetime format, such as “dd/MM/yy hh:mm” or “MM/dd/yyyy HH:mm”, and ensures that only valid datetime values are accepted.

Diagram

Features

  • Provided overview component support which allows users to see a preview or an overall view of the diagram and also navigate, pan, or zoom a particular area of the page.
  • Provided support to create a Business Process Model and Notation (BPMN) diagram using a code or a visual interface with built-in shapes described by the BPMN 2.0 specification.
  • Provided TextChanging event support for Annotation.

Bug fixes

  • #I415172 - Now, the diagram elements(nodes/connectors) are centered with respect to the dialog size whenever the dialog is resized.
  • #I415328 - Now, the nodes and connectors in the diagram are in the center, while some objects are in a collapsed state.
  • #I411633 - Now, the exception will no longer be thrown when drawing a polygon shape in the french culture.
  • #I417945 - Now, the mindmap layout is rendered properly while adding the annotation for a connector in the ConnectorCreating event.
  • #F178914 - Now, the RotationAngle property is working for the palette node.
  • #I421341 - Now, the custom node type is updated in the collection of changed event arguments while drawing polygon shapes.
  • #F179137 - Now, the connector style is updated when changing the style of the connector in the ConnectionChanged event.

DocIO

Features

  • #I249958 – Convert the Word document to a Markdown file.
  • #I408285 – Convert charts in the Word documents to images.
  • #FB-38025 – Preserve new line characters in the table of contents entries of the Word document.

Document Editor

Features

  • #I281074, #I289165, #I314827, #I320851, #I326478, #I339437, #I345929, #I346271, #I346573 - Added support for multiple columns in a page.

Bug fixes

  • #I421121 - Resolved the script error when resizing the table.

Gantt Chart

Bug fixes

  • SF-424040 - The issue in maintaining timeline format, on dynamic change in timeline unit size has been fixed.

Features

  • #FB27038 - Provided right-to-left (RTL) support in Gantt Chart. Find the documentation link here.

  • #FB37349 - Support for lazy loading has been added to the Gantt Chart. Data can now be loaded on-demand to Gantt Chart. Find the demo link here.

  • #FB24804 - Provided support to copy the Gantt Chart row or cell content to the clipboard. Find the documentation link here

  • #FB24699 - Users can now draw a taskbar in the chart area to set the start and end dates for unscheduled tasks. Find the documentation link here.

  • Added RowDropping event support in Gantt Chart row drag and drop (RDD) feature.

Breaking Changes

  • In the Gantt Chart RowDragEventArgs event argument class name has been changed from RowDragEventArgs to RowDroppedEventArgs.

Previous

<SfGantt>
    <GanttEvents RowDropped="RowDroppedHandler" TValue="BusinessObject"></GanttEvents>
</SfGantt>
@code {
    public void RowDroppedHandler(RowDragEventArgs<BusinessObject> args)
    {
        /// Enter your code here...
    }
}

Now

<SfGantt>
    <GanttEvents RowDropped="RowDroppedHandler" TValue="BusinessObject"></GanttEvents>
</SfGantt>
@code {
    public void RowDroppedHandler(RowDroppedEventArgs<BusinessObject> args)
    {
        /// Enter your code here...
    }
}

Grid

Breaking Changes

  • The Selection property in the Action enum class has been marked as deprecated and should no longer be used. It will be removed in a future version.
  • The OnRowDragStart event and the RowDragEventArgs class has been marked as deprecated and should no longer be used. It will be removed in a future version. A new event called RowDragStarting has been introduced, which is triggered when the rows are dragged to perform reordering. This event uses the RowDragStartingEventArgs class as its argument.

Previous

<SfGrid DataSource="@Orders">
<GridEvents OnRowDragStart="RowDragStartHandler" TValue="Order"></GridEvents>
........
</SfGrid>
@code{
public void RowDragStartHandler(RowDragEventArgs<Order> args)
{    
   //you can get the dragged row data's here
   List<Orders> Data = args.Data;
}
}

Now

   <SfGrid DataSource="@Orders">
    <GridEvents TValue="Orders" RowDragStarting="RowDragStartingHandler"></GridEvents>
    ........
    </SfGrid>
    @code{
    public async Task RowDragStartingHandler(RowDragStartingEventArgs<Orders> args)
    {
        //you can get the dropped row data's here
        List<Orders> Data = args.Data;
    }
    }
  • The argument class for the RowDropped event has been changed from RowDragEventArgs to RowDroppedEventArgs, as the RowDragEventArgs class has been marked as deprecated.

Previous

<SfGrid DataSource="@Orders">
<GridEvents TValue="Orders" RowDropped="RowDroppedHandler"></GridEvents>
........
</SfGrid>
@code{
public async Task RowDroppedHandler(RowDragEventArgs<Order> args)
{
    //you can get the dropped row data's here
     List<Orders> Data = args.Data;
}
}

Now

<SfGrid DataSource="@Orders">
<GridEvents TValue="Orders" RowDropped="RowDroppedHandler"></GridEvents>
........
</SfGrid>
@code{
public async Task RowDroppedHandler(RowDroppedEventArgs<Orders> args)
{
    //you can get the dropped row data's here   
      List<Orders> Data = args.Data;
}
}
  • The data type for the FromIndex and DropIndex properties in the RowDragEventArgs class has been changed from double to int, as they should be of the integer data type, rather than the double data type.

Previous

<SfGrid DataSource="@Orders">
<GridEvents OnRowDragStart="RowDragStartHandler" TValue="Order"></GridEvents>
........
</SfGrid>
@code{
public void RowDragStartHandler(RowDragEventArgs<Order> args)
{    
   //you can get the FromIndex and DropIndex here
   double fromIndex = args.FromIndex;
   double dropIndex = args.DropIndex;
}
}

Now

<SfGrid DataSource="@Orders">
<GridEvents OnRowDragStart="RowDragStartHandler" TValue="Order"></GridEvents>
........
</SfGrid>
@code{
public void RowDragStartHandler(RowDragEventArgs<Order> args)
{    
   //you can get the FromIndex and DropIndex here
   int fromIndex = args.FromIndex;
   int dropIndex = args.DropIndex;
}
}
  • In the past, the dropping action could be cancelled by setting args.Cancel as true in the RowDropped event. However, to cancel the row dropping action now, you must set args.Cancel as true in the RowDropping event.

Previous

<SfGrid DataSource="@Orders">
<GridEvents TValue="Orders" RowDropped="RowDroppedHandler"></GridEvents>
........
</SfGrid>
@code{
public async Task RowDroppedHandler(RowDragEventArgs<Order> args)
{
    args.Cancel = true;
}
}

Now

<SfGrid DataSource="@Orders">
<GridEvents TValue="Orders" RowDropping="RowDroppingHandler"></GridEvents>
........
</SfGrid>
@code{
public async Task RowDroppingHandler(RowDroppingEventArgs<Orders> args)
{
    //you can cancel the dropping action here
    args.Cancel = true;
}
}

Features

  • Provided row drag and drop support for virtualized grid.

  • Provided the below event support for row drag and drop action.

Event Name Description
RowDropping An event that is raised when the row elements are dropping on the target element.

Example

<SfGrid DataSource="@Orders">
<GridEvents TValue="Orders" RowDropping="RowDroppingHandler"></GridEvents>
........
</SfGrid>
@code{
public async Task RowDroppingHandler(RowDroppingEventArgs<Orders> args)
{
    //you can cancel the dropping action here
    args.Cancel = true;
}
}
  • #FB36293 - Provided the below events support for Copy/Paste Action.
Event Name Description
BeforeCopyPaste An event that is raised before copy or paste action in the Grid cells. You can cancel this entire copy or paste action by using this event.
BeforeCellPaste An event that is raised before pasting the copied cell value for each cell. You can cancel the pasting action for particular cell or change the value by using this event.
  • #FB32082 - Provided the below events support for AutoFill Action.
Event Name Description
BeforeAutoFill An event that is raised before the autofill action. You can cancel the entire cells getting automatically filled by using this event.
BeforeAutoFillCell An event that is raised before the autofill action for each cell. You can cancel the autofill action for particular cell or change the value by using this event.

Bug Fixes

  • #I410219 - Issue with “Excel export is not working when grid cell value is greater than max value of Int32” has been resolved.
  • #I393690 - Issue with “Grid header misaligned in left frozen column within Splitter Pane component” has been resolved.
  • #F177937 - Issue with “Not able to cancel the drop operation when performing drag and drop between two grids” has been resolved.
  • #I400117 - Issue with “Horizontal scroll bar didn’t work when freeze line moved from right to left” has been resolved.
  • #I421901 - Exception throws while saving the edited record when using the detail template has been resolved.
  • #F178441 - Issue with “Filtering any value that is not present in the filter column while using AsQueryable DataSource” has been resolved.

HeatMap

Bug fixes

  • #F177843 - When the data is added dynamically, the labels in the y-axis will be displayed properly.
  • #I421412 - The HeatMap cells are rendered properly when BubbleType property is set as SizeAndColor.
  • #I424194 - The values from the CellClicked event’s event argument will now be proper.

Features

  • #F174396 - The text styles of the axis title and axis labels can now be customized properly.

MediaQuery Preview

Features

The new Blazor Media Query component helps you to build responsive, adaptable layouts for your web applications. It detects changes in the browser’s size and adjust your layouts accordingly, ensuring that your applications look great and function well on a wide range of devices and screen sizes to provide an optimal user experience for your users no matter what device they are using.

  • Built-in media queries - Comes with predefined media breakpoints like Small (max-width: 768px), Medium (min-width: 768px), and Large (min-width: 1024px).
  • Custom media queries - Supports defining custom breakpoints and media queries, giving you more flexibility to customize the appearance of your web application to suit your unique needs.

Mention Preview

Features

The @Mention component can be used to display a pop-up suggestion list whenever the designated mention key character is entered into a text box, SfRichTextEditor, or other editable elements.

  • Data binding: Binds the list of items from local and remote data sources such as JSON, OData, WCF, and RESTful web services.

  • Grouping: Groups the logically related items under a single or specific category.

  • Filtering: Filters the list items based on a character typed in the component.

  • Sorting: Sorts the list items in alphabetical order (either ascending or descending).

  • Highlight search: Highlights the typed text in the suggestion list.

  • Templates: Customize the list item, display value, no records, and spinner loading content.

  • Accessibility: Built-in accessibility support that helps to access all the Mention component features using the keyboard, on-screen readers, or other assistive technology devices.

Bug fixes

  • #I413781, I411892 - The issue with “Small glitch occurs while expanding the submenu of menu components” has been resolved.

NumericTextBox

Bug fixes

  • #F179001 - The issue with “focus state looped in-between two components” has been resolved.

Pager

Breaking Changes

  • The Pager Template has been nested inside a div element in order to prevent the propagation of native events such as key-down and keypress. All code provided to render the pager should be placed within this div element.

Previous

<div role="navigation" tabindex="0" class="sf-pager e-control e-pager e-lib" _bl_6282c989-0df7-43a3-be82-c7705df479d7>
    <div class=" e-pagerContainer">...</div>
</div>

Now

<div role="navigation" tabindex="0" class="sf-pager e-control e-pager e-lib" _bl_6282c989-0df7-43a3-be82-c7705df479d7>
    <div>
        <div class=" e-pagerContainer">...</div>
    </div>
</div>

PDF

Bug Fixes

  • #I351114 - Hanging issue no longer occurs while creating the QRBarcode with Arabic text.
  • #I419248 - The ExtractText returning incorrect coordinate bounds is now resolved.
  • #I419825 - The formatting exception when getting color from the specific free text annotation PDF document is now resolved.
  • #I423210 - Unable to edit the XMP Metadata no longer occurs in a specific PDF document.
  • #I421277 - OCSP information not embedded while enabling LTV for a specific certificate is now resolved.
  • #I420411 - The flattened annotations not located properly in the specific PDF document is now resolved.
  • #I418723 - The argument exception no longer occurs while compressing a specific PDF document.
  • #I418031 - Find text failure for the text containing numbers with hyphens is now resolved.
  • #I415562 - The out of Memory exception no longer occurs when performing extract text for a particular PDF document.
  • #I415274 - Export annotation as XFDF not working properly for a specific PDF document is now resolved.
  • #I420973 - The ink annotation not preserved properly while flattening a specific PDF document is now resolved.
  • #I421396 - The exception no longer occurs when providing an invalid check digit value to the Ean13 Barcode.
  • #I421642 - The layer subject is no longer changed after merging a PDF document.
  • #I421061 - The image size not reduced properly while compressing a specific PDF document is now resolved.
  • #I421114 - The preservation issue no longer occurs while drawing the nested grid in a PDF document.
  • #I420853 – Converting a specific Document to PDF results in large-size output is now resolved.
  • #I418989 - The textbox multiline preservation issue no longer occurs in a specific PDF document.
  • #I417772 - The extraction failure no longer occurs when extracting attachments from a PDF document.
  • #I415576 - The hanging issue no longer occurs when performing signature validation for a particular PDF document.
  • #F176704 - The incorrect signature validation results no longer occur while validating the signature.

PDFViewer

Bug fixes

  • #I423532 - The issue with printing a PDF document without annotations has been fixed.
  • #I420555 - Process memory allocation is now improved.
  • #I419000 - Toolbar will now respond immediately on annotations tool click.
  • #I416671 - The dropdown selection is now preserved on save and reload PDF documents.

Features

  • Digital signatures of the existing PDF documents are now rendered in the PDF Viewer.
  • #I419754 - The event AnnotationUnselected has been added to show if an annotation is unselected.
  • #I419757 - CanUndo and CanRedo parameters are provided to notify the user to handle the undo and redo actions on their own.

Breaking Changes

  • Upgraded the dependent package Newtonsoft.Json version to 13.0.2 as the minimum required version.

Pivot Table

Breaking Changes

Enums Value

The following enum values have been changed to the new enum value.

Enum Old Value New Value
MultipleAxisMode Grouped Single

Bug fixes

  • #F179182 - When the AllowDataCompression property is enabled, the pivot table now works properly.
  • #F179239 - The pivot chart now works properly when performing drill down for enum type fields.
  • #I420273 - During initial rendering, the pivot chart will now properly refresh based on the given width.
  • #I404125 - While changing the width of the first column in the pivot table, it now renders properly.

Features

  • #I347947 - Provided support for displaying row and column sub-totals at the top or bottom of the header group in the pivot table by using the SubTotalsPosition property.
  • Provided support for displaying data points in different colors in multiple charts by using the ShowPointColorByMembers property. The multiple charts are actually drawn as a result of the “n” of measures bound in the datasource.

Presentation

Features

  • #I285034, #I300854 – Apply highlight color to a text in the PowerPoint Presentation.
  • #I396782, #I421732 – Find the first occurrence or all occurrences of a text in the entire PowerPoint Presentation or specific slide.

Breaking Changes

  • In earlier releases, the given System.IO.Stream instance as a parameter to Open methods was disposed of internally. From this release onwards, Presentation.Open(Stream) and Presentation.Open(Stream, String) methods will not dispose of the specified stream instance. The user has to take care of its disposal in their application.
  • The below listed APIs has been moved to Syncfusion.Presentation and Syncfusion.PresentationRenderer.
Name Type Old Namespace New Namespace
TransitionEffect Enum Syncfusion.Presentation.SlideTransition Syncfusion.Presentation
TransitionEffectOption Enum Syncfusion.Presentation.SlideTransition Syncfusion.Presentation
TransitionSpeed Enum Syncfusion.Presentation.SlideTransition Syncfusion.Presentation
ISlideShowTransition Interface Syncfusion.Presentation.Interfaces Syncfusion.Presentation
PresentationToPdfConverter Class Syncfusion.PresentationToPdfConverter Syncfusion.PresentationRenderer
PresentationToPdfConverterSettings Class Syncfusion.PresentationToPdfConverter Syncfusion.PresentationRenderer
SlidesPerPage Enum Syncfusion.PresentationToPdfConverter Syncfusion.PresentationRenderer
PublishOptions Enum Syncfusion.PresentationToPdfConverter Syncfusion.PresentationRenderer

Progress Bar

Bug Fixes

  • #I422768 - Animation duration is now proper for the indeterminate mode.

Query Builder

Features

  • #I380708, #I399567 - Provided unique fields support.

Range Selector

Bug Fixes

  • #F179106 - Range Selector tooltip is now proper for Berlin time zone.

Rating Preview

Features

The Blazor Rating component allows users to provide a star rating or view other people’s ratings on a numeric scale for any service provided, such as movies, applications, or products.

  • Precision - Different precision modes to provide more accurate rating.
  • Tooltip and Label - Provide more expressive rating with tooltip and label.
  • Template - Support for customising the rating item to a heart, svg, or any other content that precisely matches the specific requirements.
  • Accessibility - The Rating provides built-in compliance with the WAI-ARIA specifications and it is achieved through attributes.

Scheduler

Features

  • #I384604 - Provided custom workdays support when resources are grouped by date.
  • #I399939 - Provided DateRangeTemplate to customize the date range in schedule toolbar.
  • #I394207 - Provided CloseTooltipAsync public method to close the appointment tooltip.
  • #I377858 - Provided support to process recurrence rules which are not generated through the recurrence editor.

Bug fixes

  • #I419574 - The issue has been fixed that the weekly recurrence rule does not work properly when FirstDayOfWeek is set to Monday.
  • #I423160 - The issue has been fixed that the top and left values of the drag stop event are always zero in mobile mode.

SpeedDial

Features

  • #F178885 - Provided the support to add custom HTML Attributes to customize the SpeedDial Items.

Tab

Features

  • #I348957 - Provided option to specify tabindex attribute to control the tab key order of tab header elements.

TimePicker

Features

  • F170233, SF-386994 - The support for the new “TimeOnly” struct was added in .NET 7.0 projects.

-We have added support for “Masked Time input”, a feature that helps users enter formatted time values. This feature enforces a specific time format, such as “hh:mm” or “hh:mm:ss”, and ensures that only valid time values are accepted.

Toolbar

Features

  • #I348957 - Provided option to specify tabindex attribute to control the tab key order of the toolbar elements.

Tree Grid

Features

  • Provided the shimmer effect for tree grid during scrolling action when virtualization enabled. Please find the demo link here.
  • Provided the BeforeCopyPaste, BeforeCellPaste event support in tree grid. Please find the documentation link here.

Breaking Changes

Previous

<SfTreeGrid>
    <TreeGridEvents RowDropped="RowDroppedHandler" TValue="BusinessObject"></TreeGridEvents>
</SfTreeGrid>
@code {
    public void RowDroppedHandler(RowDragEventArgs<BusinessObject> args)
    {
        /// Enter your code here...
    }
}

Now

<SfTreeGrid>
    <TreeGridEvents TValue="BusinessObject" RowDropped="RowDroppedHandler"></TreeGridEvents>
</SfTreeGrid>
@code {
    public async Task RowDroppedHandler(RowDroppedEventArgs<BusinessObject> args)
    {
        /// Enter your code here...
    }
}

TreeView

Features

  • Provided multiple selection support for TreeView in mobile mode.

FileUploader

Features

  • We have added a new “EnableHtmlSanitizer” property to our file uploader. This feature prevents cross-site scripting code in selected file names, improving security and protecting users from malicious attacks.

Visual Studio Extensions

New Feature

  • #FB39014 - Provided the .NET 7.0 support to Syncfusion Blazor Template Studio, Code Generator, Conversion, Migration, and Scaffolding.

Breaking changes

  • Removed the .NET Core 3.1 support and Syncfusion Visual Studio 2019 extension support has been discontinued.

Visual Studio Code Extensions

New Feature

  • Provided the .NET 7.0 support to Syncfusion Visual Studio Code Blazor Project Template.

Breaking changes

  • Removed the .NET Core 3.1 support in Blazor Project Template.

XlsIO

Breaking Changes

  • #F178313 - Remove method is added under IPivotFilters interface to remove existing filters in the pivot field.