July 19, 2021 Release

This release includes new and improved versions of DataGrid for Javascript, Toolkit Plus for WPF, Zip for .NET, SFTP for .NET, Words for .NET and PDF Creator for .NET

Xceed DataGrid for Javascript 1.7

  • Go here to see the details

Xceed Toolkit Plus for WPF 4.2

  • In AvalonDock, the LayoutContent.IsFloating property now raises a PropertyChanged event when a LayoutAnchorable/LayoutDocument starts/ends floating. This allows to add a binding on the IsFloating property.
  • In AvalonDock, floating a LayoutAnchorable no longer shrinks a neighboring LayoutDocument.
  • In AvalonDock, the LayoutItem.CanClose/IsSelected/IsActive/CanTogglePin properties can now be changed dynamically.
  • In AvalonDock, floating a LayoutAnchorable contained in a multi-LayoutAnchorableGroup with specific star sizes no longer resets the sizes of the remaining LayoutItems after the floating.
  • In AvalonDock, moving LayoutDocumentTabItems to reorder them no longer creates a floating window as soon as the mouse leaves the LayoutDocumentTabItem’s top and bottom. Instead, a vertical buffer is now added to create moving smoothness.
  • In PropertyGrid, removing a value from an UpDown editor no longer throws an exception.
  • In PropertyGrid, NullRefException are no longer raised while checking for invalid values of PropertyItems.
  • In PropertyGrid, readonly properties using the type converter EnumDisplayNameConverter now display the converted value with the TextBlockEditor.
  • In PropertyGrid, a new Password editor is now available for all properties using a PasswordPropertyText attribute.
  • In all UpDown controls, new properties are now available to set the width/height of the ButtonSpinner.
  • In all UpDown controls, new properties are now available to easily modify the content of the Up/Down arrows (for both enabled and disabled state).
  • In ButtonSpinner, the property ButtonSpinnerLocation is now obsolete; SpinnerLocation should now be used.
  • In ButtonSpinner, the property ShowButtonSpinner is now obsolete; ShowSpinner should now be used.
  • In CheckComboBox/CheckListBox, doing a “Select All” now only raises an ItemSelectionChangedEvent for the unselected items. Similarly, doing a “UnSelect All” now only raises an ItemSelectionChangedEvent for the selected items.
  • In ChildWindow, the default header background now uses Windows’ default header background.
  • In StyleableWindow, clicking on the header icon now pops the SystemMenu at the left of the window. Clicking again now closes the SystemMenu.
  • In Themes, using the DataGrid now loads data faster.
  • In DataGrid, unused variables are now removed, resulting in no warnings while compiling.
  • In UI Automation, the PropertyGridTextBoxEditor now shows the TextBox content in the automation tool.
  • In ColorPicker, the popup containing many colors now has a scrollbar when the list of colors is too long.
  • In DateTimePicker, the Culture in the application is now set for the DateTimePicker’s Calendar.
  • In CalculatorUpDown, DateTimePicker and TimePicker, new properties are now availables to customize the content of the DropDown button (whether it is enabled or not).
  • All controls from Toolkit (and DataGrid) now support the .NET 5 Framework.

Xceed Zip for .NET and .NET Standard 7.0

  • Added ZippedFile.SetFullName() and ZippedFolder.SetFullName() methods which allow moving a file/folder instantly within the same archive.
  • Creating a new split zip archive no longer uses temporary files.

Xceed SFTP for .NET and .NET Standard 7.0

  • Added support for ssh-ecdsa-sha2-* private keys in PuTTYPrivateKeyFile class, allowing to login with ECDSA certificates.
  • Added AES Galois Counter Mode (aes128-gcm and aes256-gcm) encryption support.
  • Added support for elliptic curve Secp256k1 (ecdsa-sha2-1.3.132.0.10) in key exchange method and public key algorithm.
  • Added support for elliptic curve Nistp521 (ecdsa-sha2-nistp521) in key exchange method and public key algorithm.
  • SSHAlgorithmList.Reset() now accepts a list of algorithms to populate the list after clearing it.
  • Fixed a bug where the “Diffie Hellman elliptic curve” key exchange was not secure enough.
  • Fixed a bug where using elliptic curve public key algorithms to connect failed in certain situations.

Xceed Words for .NET 2.0

  • Xceed Words for .NET now supports the .NET 5 Framework.
  • Digital signatures can now be added to documents in the .NET Framework environment.
  • Signature lines can now be positioned in a document and many new methods are now available to retrieve/remove/add digital signatures or signature lines.
  • In PDF Conversion, a table with vertical and horizontal merged cells now correctly converts the merged cells to PDF.
  • In PDF Conversion, tables located in sdt tags now correctly converts to PDF.
  • In PDF Conversion, converting null text no longer throws an exception.
  • In PDF Conversion, setting the Table.AutoFit property to “Contents” now correctly sizes the width of each column based on its content.
  • In PDF Conversion, tables with more than one table header now convert to PDF with the corresponding table headers.
  • In PDF Conversion, using AutoFitContent to set the table’s column width now correctly auto-fits the content of cells.
  • In PDF Conversion, when the Table of Contents exceeds the page’s length, the remaining content is now rendered on the following pages.
  • In PDF Conversion, when a Table of Contents is not visible, the conversion no longer throws a Null Ref exception.
  • In PDF Conversion, when a Table of Contents is not visible, the saving no longer throws a Null Ref exception.
  • In PDF Conversion, a paragraph containing many images displayed on multiple pages now converts to PDF with multiple pages.
  • In PDF Conversion, the Table of Contents now shows the correct page numbers when some referenced paragraphs are positioned before the Table of Contents.
  • In PDF Conversion, the paragraph’s indentation is now automatically added when a paragraph from the Table of Contents does not specify any indentation but has an outlineLevel greater than 0.
  • In PDF Conversion, splitting a table on two pages with cells containing paragraph.KeepWithNextParagraph() now correctly splits the table on a row where paragraphs are not kept together.
  • In PDF Conversion, when Table of Contents paragraphs contain tabs, the resulting PDF document will contain valid tab spacings.
  • In PDF Conversion, the table now forces a split at the end of the page to prevent a StackOverflow exception when a big multi-rows table have all its rows but that they cannot be split on multiple pages (or when all the table’s paragraphs have a KeepWithNext set to true).
  • In PDF Conversion, a table following a paragraph with a KeepWithNext set to true now keeps the paragraph and the table on the same page in the resulting PDF document.
  • In PDF Conversion, when font sizes are not whole or half values, the result is rounded to the next whole value, preventing font size exception.
  • In PDF Conversion, for tables, OutOfRange exceptions are no longer thrown when mixing row span and vertical merged cells.
  • In PDF Conversion, Table of Contents elements no longer include end of lines characters from text.
  • In PDF Conversion, Section.MarginFooter value is now used to position the footer content in the footer.
  • In PDF Conversion, when a section starts with a table followed by keepWithNext paragraphs, the resulting PDF document no longer redraws the table until it finds a non-keepWithNext paragraph.
  • In PDF Conversion, using a document with custom properties of type bool where values are “0” or “1” no longer throws an exception.
  • In PDF Conversion, if Table of Contents paragraphs are based on non-English heading style names, assertion warnings are no longer raised and the based on styles are used until finding a known style name.
  • In PDF Conversion, tables that contain multi-header rows and span on multiple pages now display all the header rows on the extra pages.
  • In PDF Conversion, tables with multi-heading rows splitting on two pages now display all the heading rows on the second page.
  • In PDF Conversion, tables spanned on multiple pages no longer overlap page numbers in the footer.
  • In PDF Conversion, superscript characters no longer appear too small.
  • In PDF Conversion, exceptions are no longer thrown when Pictures are grouped.
  • In PDF Conversion, headers containing a wrapped behind text object now display the main document content behind this object.
  • In PDF Conversion, a StackOverflow exception is not raised anymore when a cell extends over two pages.
  • In PDF Conversion, using a Table of Contents with the “o” switch now only displays the valid headings in the Table of Contents.
  • In Document, a new method, GetPageCount(), is now available to retrieve the number of pages in the document. Note that this feature is currently experimental.
  • In Document, new methods and objects are now available to append footnotes/endnotes to paragraphs. These footnotes/endnotes can contain strings/Pictures/Hyperlinks/Tables.
  • In Document, loading a docx or stream containing external entities is no longer supported. This prevents from working with vulnerable documents.
  • In Document, the text hyphenation will now be automatically updated when its hyphenation object properties are modified.
  • In Document, calling a Save() or a ConvertToPdf() now displays a watermark in the output document when using a trial license.
  • In Paragraph, removing Bookmarks when the bookmarkStart is included in a paragraph but the bookmarkEnd is not, now removes the bookmark from the paragraph.
  • In Paragraph, calling the InsertText method no longer parses the whole document to update ids when this action is not necessary. This improves performance when many text insertions are needed.
  • In Paragraph, replacing text with regexMatchHandler and formatting no longer throws an exception because the index is too high.
  • In Paragraph, the method InsertParagraphBeforeSelf(Paragraph) now returns a new instance of the newly created paragraph.
  • In Chart, multiple charts included in one chart are now detected.
  • In Chart, the Chart.Save method now correctly saves the changes to charts using two Y-Axis.
  • In Chart Axis, the Title property can now be used to get/set the axis’ title.
  • In List, the ListOptions property can now be used to modify the numbering of the list’s sub-levels.
  • In List, the ListOptions property can now be used to get/set the list configuration, including the list type, the list modification tracking and the list levels configuration.
  • In Chart, List, Shape and Image, a new Remove method is now available to remove the element from the document.
  • In Picture, using MS Word 2007 to open a document containing pictures now correctly opens the document.
  • In Table, merging multiple cells from a row now updates the resulting cell’s width.
  • In CustomProperties, updating split custom properties now correctly updates the properties.

Xceed PDF Creator for .NET 2.0

  • Xceed PDF Creator for .NET now supports the .NET 5 Framework.
  • Tables located in sdt tags are now correctly saved.
  • Tables with more than one table header now save with the corresponding table headers.
  • Tables that contain multi-header rows and span on multiple pages now display all the header rows on the extra pages.
  • Tables with multi-heading rows splitting on two pages now display all the heading rows on the second page.
  • Tables spanned on multiple pages no longer overlap page numbers in the footer.
  • A table with vertical and horizontal merged cells now correctly saves the merged cells.
  • A table following a paragraph with a KeepWithNext set to true now keeps the paragraph and the table on the same page in the resulting PDF document.
  • A paragraph containing many images displayed on multiple pages now saves to PDF with multiple pages.
  • A StackOverflow exception is not raised anymore when a cell extends over two pages.
  • Headers containing a wrapped behind text object now display the main document content behind this object.
  • Exceptions are no longer thrown when Pictures are grouped.
  • Superscript characters no longer appear too small.
  • Table of Contents elements no longer include end of lines characters from text.
  • If Table of Contents paragraphs are based on non-English heading style names, assertion warnings are no longer raised and the based on styles are used until finding a known style name.
  • Section.MarginFooter value is now used to position the footer content in the footer.
  • Using custom properties of type bool where values are “0” or “1” no longer throws an exception.
  • Using a Table of Contents with the “o” switch now only displays the valid headings in the Table of Contents.
  • Saving null text no longer throws an exception.
  • Setting the Table.AutoFit property to “Contents” now correctly sizes the width of each column based on its content.
  • Splitting a table on two pages with cells containing paragraph.KeepWithNextParagraph() now correctly splits the table on a row where paragraphs are not kept together.
  • When a section starts with a table followed by keepWithNext paragraphs, the resulting PDF document no longer redraws the table until it finds a non-keepWithNext paragraph.
  • When font sizes are not whole or half values, the result is rounded to the next whole value, preventing font size exception.
  • When a big multi-rows table have all its rows and they cannott be split on multiple pages (or when all the table’s paragraphs have a KeepWithNext set to true), the table now forces a split at the end of the page to prevent a StackOverflow exception.
  • When Table of Contents paragraphs contain tabs, the resulting PDF document will contain valid tab spacings.
  • When the Table of Contents exceeds the page’s length, the remaining content is now rendered on the following pages.
  • When a paragraph from the Table of Contents does not specify any indentation but has an outlineLevel greater than 0, the paragraph’s indentation is now automatically added.
  • When some referenced paragraphs are positioned before the Table of Contents, the Table of Contents now shows the correct page numbers.
  • When using Tables with AutoFitContent to set the table’s column width, the width now correctly auto-fits the content of cells.
  • When using a trial license, calling a Save() now displays a watermark in the output document.
  • For tables, OutOfRange exceptions are no longer thrown when mixing row span and vertical merged cells.
  • In Paragraph, removing Bookmarks when the bookmarkStart is included in a paragraph but the bookmarkEnd is not now removes the bookmark from the paragraph.
  • In Paragraph, calling the InsertText method no longer parses the whole document to update ids when this action is not necessary. This improves performance when many text insertions are needed.
  • In Paragraph, replacing text with regexMatchHandler and formatting no longer throws an exception because the index is too high.
  • In Paragraph, the method InsertParagraphBeforeSelf(Paragraph) now returns a new instance of the newly created paragraph.
  • In Document, a new method, GetPageCount(), is now available to retrieve the number of pages in the document. Note that this feature is currently experimental.
  • In Document, the text hyphenation will now be automatically updated when its hyphenation object properties are modified.
  • In List, the ListOptions property can now be used to modify the numbering of the list’s sub-levels.
  • In List, the ListOptions property can now be used to get/set the list configuration, including the list type, the list modification tracking and the list levels configuration.
  • In Chart, multiple charts included in one chart are now detected.
  • In Chart, the Chart.Save method now correctly saves the changes to charts using two Y-Axis.
  • In Chart, List, Shape and Image, a new Remove method is now available to remove the element from the document.
  • In Chart Axis, the Title property can now be used to get/set the axis’ title.
  • In Table, merging multiple cells from a row now updates the resulting cell’s width.
  • In CustomProperties, updating split custom properties now correctly updates the properties.