# What's New in TX Text Control .NET for WPF 17.0

> TX Text Control .NET for WPF 17.0: merged and named table cells, colored cell borders, page borders, signed PDF, TX Spell .NET and a spell check dialog.

- **Product:** TX Text Control .NET for WPF
- **Section:** Documentation
- **Kind:** Topic
- **Path:** TX Text Control .NET for WPF > What's New > Older Versions > What's New in TX Text Control .NET for WPF 17.0
- **3111 words**
- **Web URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1700/
- **LLMs URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1700/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1700/llms-full.txt

---

Tables received the most attention in TX Text Control 17.0: cells can be merged, split and named, whole columns selected and each cell border colored. Beyond tables, the version added page borders, PDF documents signed with a certificate and a connection to the new TX Spell .NET, with a spell checking dialog box in the WPF `TextControl`.

Version 17.0 was released in November 2011, together with TX Spell .NET 2.0, then a new product, as the press release [Press Release: TX Text Control 17.0 and TX Spell .NET 2.0 Released](https://www.textcontrol.com/blog/2011/11/16/press-release-tx-text-control-170-and-tx-spell-net-20-released/) announced.

### Version 17.0 at a Glance

| Area | What is new |
|---|---|
| Tables | Column selection, merged and split cells, named cells, colored cell borders |
| Page borders | Borders around the pages of a section |
| PDF | Digital signatures with an X.509 certificate |
| Spell checking | The TX Spell .NET component, a dialog box and a context menu for misspelled words |
| Selections | A transparent selection, or the classic inverted one |
| HTML | Import with the parsing rules of HTML5 |

### Tables

- **Columns and cell ranges.** Selections can span table columns and rectangular ranges of cells, and selected columns can be formatted and copied to the clipboard. [TableColumn.Select](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/select-method/llms-full.txt) selects a column in code; the new [TableColumn](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/llms-full.txt) class also gives the column's [Width](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/width-property/llms-full.txt), [Position](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/position-property/llms-full.txt) and [CellFormat](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/cellformat-property/llms-full.txt), and [Table.Columns](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/columns-property/llms-full.txt) returns the columns of a table.
- **Merged cells.** [Table.MergeCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/mergecells-method/llms-full.txt) merges the selected cells into one cell with their width and content, and [Table.SplitCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/splitcells-method/llms-full.txt) splits merged cells again. Cells can only be merged when more than one cell of a single table is selected; [Table.CanMergeCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/canmergecells-property/llms-full.txt) and [Table.CanSplitCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/cansplitcells-property/llms-full.txt) tell whether it is possible.
- **Named cells.** [TableCell.Name](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecell/name-property/llms-full.txt) stores any string with a cell. The name is saved only in the TX Text Control format.
- **Colored cell borders.** Each border of a cell can have its own color, set with [LeftBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/leftbordercolor-property/llms-full.txt), [TopBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/topbordercolor-property/llms-full.txt), [RightBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/rightbordercolor-property/llms-full.txt) and [BottomBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/bottombordercolor-property/llms-full.txt) of [TableCellFormat](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/llms-full.txt). All text filters and the TX Text Control format keep the colors, and the table attributes dialog box sets them.

[Tables and Calculations](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/document-processing/tables/llms-full.txt) shows how to work with tables in the current version.

### Page Borders

The pages of a section can have a border. [SectionFormat.PageBorder](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/sectionformat/pageborder-property/llms-full.txt) takes a [PageBorder](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/llms-full.txt) object that defines the top, left, right and bottom line, each with its own width, color and distance. The distance is measured from the edge of the page or, with [MeasureFromText](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/measurefromtext-property/llms-full.txt), from the text. [SurroundHeader](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/surroundheader-property/llms-full.txt) and [SurroundFooter](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/surroundfooter-property/llms-full.txt) include the header and the footer, and [FirstPageOnly](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/firstpageonly-property/llms-full.txt) and [OmitFirstPage](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/omitfirstpage-property/llms-full.txt) limit the border to the first page or leave it out there. The page settings dialog box lets users define a page border. See [Sections, Pages, Headers, and Footers](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/document-processing/sections-headers/llms-full.txt).

### Digital Signatures

PDF and PDF/A documents can be signed with an X.509 certificate, which, according to the press release, can come from a PFX, DER or Base64 CER file, from raw data or from the local certificate store. [SaveSettings.DigitalSignature](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/savesettings/digitalsignature-property/llms-full.txt) takes a [DigitalSignature](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/digitalsignature/llms-full.txt) object, which holds the certificate and the other data needed to sign the file when it is saved. [Digital Signatures](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/digital-signatures/llms-full.txt) covers signing in the current version.

### Spell Checking and Selections

- **TX Spell .NET.** [WPF.TextControl.SpellChecker](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/spellchecker-property/llms-full.txt) connects the TX Spell .NET component, which is activated with [IsSpellCheckingEnabled](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/isspellcheckingenabled-property/llms-full.txt). It handles the `SpellCheckText` event internally, finds misspelled words and offers a context menu with corrections when a user right-clicks one. [ServerTextControl.SpellChecker](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/servertextcontrol/spellchecker-property/llms-full.txt) connects it without a user interface.
- **Spell checking dialog box.** [SpellCheckDialog](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/spellcheckdialog-method/llms-full.txt) opens a dialog box that corrects the misspelled words of the document. See [Spell Checking and Hyphenation](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/document-editor/spell-checking/llms-full.txt).
- **Selections.** Selected text is shown with a transparent blue bitmap. [SelectionViewMode](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/selectionviewmode-property/llms-full.txt) switches back to the classic view, which inverts the text.
- **HTML import.** The HTML import filter parses documents with the rules of the W3C specification of HTML5.

### Upgrade to Version 17.0

Version 17.0 has no update notes.

### New Classes, Properties, Methods and Events

The classes and members below are the ones that the What's New documentation of version 17.0 lists for TX Text Control .NET for WPF. Names are relative to the `TXTextControl` namespace, each name links to its current reference page, and "(obsolete)" marks a member that is obsolete today. The version's own list names `Table` and `TableCellFormat` as new classes, but both existed before: `Table.Select` dates from version 10.1, and `TableRow.CellFormat` returned a `TableCellFormat` in version 12.0, so neither is listed under New Classes.

#### New Classes

- [DigitalSignature](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/digitalsignature/llms-full.txt)
- [PageBorder](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/llms-full.txt)
- [TableCellCollection](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/llms-full.txt)
- [TableColumn](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/llms-full.txt)

#### Members by Class

| Class | Properties | Methods | Events |
|---|---|---|---|
| [PageBorder](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/llms-full.txt) | [BottomDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/bottomdistance-property/llms-full.txt), [BottomLineColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/bottomlinecolor-property/llms-full.txt), [BottomLineWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/bottomlinewidth-property/llms-full.txt), [FirstPageOnly](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/firstpageonly-property/llms-full.txt), [LeftDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/leftdistance-property/llms-full.txt), [LeftLineColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/leftlinecolor-property/llms-full.txt), [LeftLineWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/leftlinewidth-property/llms-full.txt), [MeasureFromText](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/measurefromtext-property/llms-full.txt), [OmitFirstPage](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/omitfirstpage-property/llms-full.txt), [RightDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/rightdistance-property/llms-full.txt), [RightLineColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/rightlinecolor-property/llms-full.txt), [RightLineWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/rightlinewidth-property/llms-full.txt), [SurroundFooter](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/surroundfooter-property/llms-full.txt), [SurroundHeader](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/surroundheader-property/llms-full.txt), [TopDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/topdistance-property/llms-full.txt), [TopLineColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/toplinecolor-property/llms-full.txt), [TopLineWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/pageborder/toplinewidth-property/llms-full.txt) |  |  |
| [SaveSettings](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/savesettings/llms-full.txt) | [DigitalSignature](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/savesettings/digitalsignature-property/llms-full.txt) |  |  |
| [SectionFormat](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/sectionformat/llms-full.txt) | [PageBorder](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/sectionformat/pageborder-property/llms-full.txt) |  |  |
| [ServerTextControl](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/servertextcontrol/llms-full.txt) | [SpellChecker](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/servertextcontrol/spellchecker-property/llms-full.txt) |  |  |
| [Table](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/llms-full.txt) | [CanMergeCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/canmergecells-property/llms-full.txt), [CanSplitCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/cansplitcells-property/llms-full.txt), [Cells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/cells-property/llms-full.txt), [Columns](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/columns-property/llms-full.txt), [ID](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/id-property/llms-full.txt), [Rows](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/rows-property/llms-full.txt) | [MergeCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/mergecells-method/llms-full.txt), [SplitCells](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/table/splitcells-method/llms-full.txt) |  |
| [TableCell](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecell/llms-full.txt) | [Name](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecell/name-property/llms-full.txt) |  |  |
| [TableCellCollection](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/llms-full.txt) | [CanRemove](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/canremove-property/llms-full.txt) | [CopyTo](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/copyto-method/llms-full.txt), [GetItem](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/getitem-method/llms-full.txt), [Remove](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellcollection/remove-method/llms-full.txt) |  |
| [TableCellFormat](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/llms-full.txt) | [BackColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/backcolor-property/llms-full.txt), [BottomBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/bottombordercolor-property/llms-full.txt), [BottomBorderWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/bottomborderwidth-property/llms-full.txt), [BottomTextDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/bottomtextdistance-property/llms-full.txt), [LeftBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/leftbordercolor-property/llms-full.txt), [LeftBorderWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/leftborderwidth-property/llms-full.txt), [LeftTextDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/lefttextdistance-property/llms-full.txt), [RightBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/rightbordercolor-property/llms-full.txt), [RightBorderWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/rightborderwidth-property/llms-full.txt), [RightTextDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/righttextdistance-property/llms-full.txt), [TopBorderColor](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/topbordercolor-property/llms-full.txt), [TopBorderWidth](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/topborderwidth-property/llms-full.txt), [TopTextDistance](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/toptextdistance-property/llms-full.txt), [VerticalAlignment](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecellformat/verticalalignment-property/llms-full.txt) |  |  |
| [TableColumn](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/llms-full.txt) | [CellFormat](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/cellformat-property/llms-full.txt), [Column](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/column-property/llms-full.txt), [Position](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/position-property/llms-full.txt), [Width](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/width-property/llms-full.txt) | [Select](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol/tablecolumn/select-method/llms-full.txt) |  |
| [WPF.TextControl](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/llms-full.txt) | [SelectionViewMode](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/selectionviewmode-property/llms-full.txt), [SpellChecker](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/spellchecker-property/llms-full.txt) | [SpellCheckDialog](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/reference/txtextcontrol-wpf/textcontrol/spellcheckdialog-method/llms-full.txt) |  |

### Next Steps

- [Version 18.0](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1800/llms-full.txt): the features of the next version.
- [Version 16.0](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1600/llms-full.txt): table headers, the spell checker interface and text parts.
- [Tables and Calculations](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/document-processing/tables/llms-full.txt): create and format tables.

---

## Nearby

- **Previous:** [What's New in TX Text Control .NET for WPF 18.0](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1800/llms-full.txt)
- **Next:** [What's New in TX Text Control .NET for WPF 16.0](https://docs.textcontrol.com/tx-text-control-dotnet-wpf/whats-new/older-versions/1600/llms-full.txt)
