This message contains graphics. If you do not see the graphics: Graphic Version.
 
Convert text to a table using TX Text Control .NET for Windows Forms

An often requested feature is the 'Text to Table' functionality from MS Word, which converts plain text into a table using delimiters, such as commas or hyphens.

Today, we would like to show you how to implement this into your TX Text Control based word processing application.

Our application will allow an end user to type some words, seperated by a comma, in to a word processing document. Then s/he is able to select the lines and click on a menu entry to convert them into a table automatically.

We use the Lines Collection of TX Text Control to read the selected text row by row. This string is used in a tokenizer, which splits the string into small pieces based on a delimiter such as a comma.

Visual Basic .NET does not includes a tokenizer like the one in VC++, thus we have to write our own. We have placed the class StringTokenizer into the downloadable archive, but not described it here. It returns all tokens in a string, the lines of the TX Text Control.

While (minLine <= maxLine) st = New StringTokenizer(tx.Lines.Item(minLine).Text, delimiter) If (st.CountTokens() > maxItems) Then maxItems = st.CountTokens End If Lines.Add(st.Tokens) minLine = minLine + 1 End While

We fill a Collection with all tokens that will be used to fill the table, replacing the selected plain text. This is done by looping through the whole Lines Collection. We use the Table.Cell Collection to insert the text into the appropriate cells.

For Each line In Lines x = 1 For Each word In line tx.Tables.GetItem(nextTable).Cells.GetItem(y, x).Text = word x = x + 1 Next y = y + 1 Next

Additionally, we have implemented a simple dialog, which allows the end user to control the table size and the delimiter. The table size is calculated automatically based on the counted tokens in the selected text. The end user, however, is still able to insert a larger table.

The minimum requirements for this sample application are TX Text Control .NET for Windows Forms trial version and Visual Studio .NET 2003.


Best regards

The Newsletter Team

Text Control GmbH respects your online time and privacy. We only send this newsletter to TX Text Control customers and people who have signed up to receive it. However, if you would prefer not to receive future issues of the newsletter, you may unsubscribe at any time. If you received this newsletter forwarded from a colleague or friend, you may wish to subscribe directly.

Sent to: N/A.

Imprint | Unsubscribe | Subscribe

© 2004 Text Control GmbH. All Rights Reserved.