Restricted Document Access

TextControl can edit documents with restrictions such as forbid editing, printing, formatting or copying contents to the clipboard. These restrictions can be specified with the DocumentPermissions property of a TextControl or WPF.TextControl and they are activated, if the EditMode property is changed from Edit to ReadAndSelect. If UsePassword is specified with the EditMode property, a dialog box is opened where the user can enter a password which protects the restrictions. To unprotect the document the same password must be entered when the edit mode is reset to Edit. The set of permissions and the password are saved in the document in an encrypted form. When a password protected document is loaded it is opened read only. Supported text formats are RTF, Microsoft Word (DOC and DOCX), Adobe PDF and the TX TextControl text format (TX). Editable regions are pieces of text that remain editable when the EditMode property has been set to ReadAndSelect. An editable region can be defined through a start position and a length or through a selection and they can overlap. All editable regions are contained in a EditableRegionCollection which can be obtained with the TextControl.EditableRegions, TextFrame.EditableRegions or HeaderFooter.EditableRegions property. These collections can be used to add or to remove an editable region. Each editable region is related to a user through the UserName property. Only this user can edit the region, when the document has been set to read only. To specify the users who have access to the document the UserNames property must be used. To specify that everyone can edit a certain region the user name must be an empty string. Events occur, when an editable region is created (EditableRegionCreated), deleted (EditableRegionDeleted), entered (EditableRegionEntered) or left (EditableRegionLeft). An editable region is highlighted on the screen. By default the highlight color depends on the user name, but it can be set to a certain value with the EditableRegion.HighlightColor property. To provide a user-interface for specifying restrictions and adding editable regions, the Windows.Forms.Ribbon.RibbonPermissionsTab and WPF.RibbonPermissionsTab have been added to the number of predefined ribbon tabs.

Classes

Class Description
TXTextControl.DocumentPermissions The DocumentPermissions class provides settings determining how the document can be edited, when the EditMode is changed from Edit to ReadAndSelect.
TXTextControl.EditableRegion An EditableRegion object represents an editable region in a TX Text Control document.
TXTextControl.EditableRegionCollection Contains all editable regions in the main text or another part of a document.
TXTextControl.EditableRegionEventArgs The EditableRegionEventArgs class provides data for the EditableRegionCreated, EditableRegionDeleted, EditableRegionEntered and EditableRegionLeft events.

Constructors

Constructor Description
TXTextControl.EditableRegion Initializes a new instance of the EditableRegion class.

Enumerations

Enumeration Description
TXTextControl.EditableRegionCollection.AddResult Specifies the result when an editable region has been added to the document.

Events

Event Description
TXTextControl.ServerTextControl.EditableRegionCreated Occurs when an editable region has been created.
TXTextControl.ServerTextControl.EditableRegionDeleted Occurs when an editable region has been deleted.

Methods

Method Description
TXTextControl.EditableRegion.Save Saves the editable region's text with the specified format.
TXTextControl.EditableRegion.ScrollTo Sets the current input position to the beginning of an editable region and scrolls it into the visible part of the document.
TXTextControl.EditableRegionCollection.Add Adds a new editable region to the document.
TXTextControl.EditableRegionCollection.CopyTo Copies the elements of the collection to an array, starting at a particular index.
TXTextControl.EditableRegionCollection.GetEnumerator Returns an enumerator that can be used to iterate through the collection.
TXTextControl.EditableRegionCollection.GetItem Gets the editable region with the specified id.
TXTextControl.EditableRegionCollection.GetItems Gets all editable regions at the current text input position.
TXTextControl.EditableRegionCollection.Remove Removes an editable region from the collection.
TXTextControl.ServerTextControl.OnEditableRegionCreated Raises the EditableRegionCreated event.
TXTextControl.ServerTextControl.OnEditableRegionDeleted Raises the EditableRegionDeleted event.

Properties

Property Description
TXTextControl.DocumentPermissions.AllowCopy Specifies whether document content can be copied to the clipboard.
TXTextControl.DocumentPermissions.AllowEditingFormFields Specifies whether form fields can be edited.
TXTextControl.DocumentPermissions.AllowFormatting Gets or sets a value specifying whether the document can be formatted.
TXTextControl.DocumentPermissions.AllowFormattingStyles Gets or sets a value specifying whether formatting styles can be used to format the document.
TXTextControl.DocumentPermissions.AllowPrinting Gets or sets a value specifying whether the document can be printed.
TXTextControl.DocumentPermissions.ReadOnly Gets or sets a value specifying whether the document is read only.
TXTextControl.EditableRegion.DefaultHighlightColor Gets the default highlight color of an editable region.
TXTextControl.EditableRegion.HighlightColor Gets or sets the highlight color for the editable region.
TXTextControl.EditableRegion.HighlightMode Gets or sets a value indicating when the editable region is highlighted.
TXTextControl.EditableRegion.ID Gets or sets the editable region's identifier.
TXTextControl.EditableRegion.Length Gets the number of characters which belong to the editable region.
TXTextControl.EditableRegion.UserName Gets or sets the name of the user who can edit the region.
TXTextControl.EditableRegion.Number Gets the editable region's number.
TXTextControl.EditableRegion.Start Gets the index (one-based) of the first character which belongs to the editable region.
TXTextControl.EditableRegion.Text Gets the editable region's text.
TXTextControl.EditableRegionCollection.Count Gets the number of elements contained in the collection.
TXTextControl.EditableRegionCollection.IsSynchronized Returns true if the collection is designed to be thread safe, otherwise, it returns false.
TXTextControl.EditableRegionCollection.Item Gets the editable region with the specified number from the collection.
TXTextControl.EditableRegionCollection.SyncRoot Gets an object that can be used to synchronize access to the collection.
TXTextControl.EditableRegionEventArgs.EditableRegion Gets an object that represents the editable region which causes the event.
TXTextControl.ServerTextControl.EditableRegions Gets a collection of all editable regions contained in the document.