Products Technologies Demo Docs Blog Support Company

Protecting Parts of a Document

I just got an interesting call from a customer who wanted to avoid users from changing the content of a document except for the inserted fields. The text fields in TX Text Control ActiveX have properties that would help avoid changes in the field. But how to protect the rest of the document? We are going to utilize the field events FieldEntered and FieldLeft of TX Text Control ActiveX and a global flag that informs whether the current input position is inside of a field or not. Then we have…

Protecting Parts of a Document

I just got an interesting call from a customer who wanted to avoid users from changing the content of a document except for the inserted fields. The text fields in TX Text Control ActiveX have properties that would help avoid changes in the field. But how to protect the rest of the document?

We are going to utilize the field events FieldEntered and FieldLeft of TX Text Control ActiveX and a global flag that informs whether the current input position is inside of a field or not.

Then we have to trap the keystrokes in TX Text Control and nullify the KeyCode or KeyAscii parameter in case the input position is outside a marked text field.

Dim CanEdit As Boolean
Private Sub TXTextControl1_FieldEntered(ByVal FieldId As Integer)
    CanEdit = True
End Sub
Private Sub TXTextControl1_FieldLeft(ByVal FieldId As Integer)
    CanEdit = False
End Sub
Private Sub TXTextControl1_KeyDown(KeyCode As Integer, Shift As Integer)
    If CanEdit = True Then Exit Sub

    If (Shift = 2 And KeyCode = 86) Then
        KeyCode = 0
    End If
End Sub
Private Sub TXTextControl1_KeyPress(KeyAscii As Integer)
    If CanEdit = True Then Exit Sub
    KeyAscii = 0
End Sub

It is also possible to change the EditMode to ReadOnly, but the Undo buffer is going to be deleted to save memory as the user is not able to make changes on the document.

Stay in the loop!

Subscribe to the newsletter to receive the latest updates.

Related Posts

Windows FormsWPF.NET

Create a Table of Contents in Windows Forms using C#

This article explains how to create a table of contents in Windows Forms using the ribbon or programmatically. Creating a table of contents is required to organize large documents.


Windows FormsList.NET

Two Ways to Restart Numbered Lists in TX Text Control

In TX Text Control, numbered lists are continued by default and need to be reset when required. There is more than one way if you want to restart numbered lists in a document. In this article, two…


.NETSample

Paste Special: The Easy Way to Implement

In an older sample, I showed how to implement a paste special functionality by accessing the clipboard directly using .NET functionality. In version 15.0, we implemented this functionality…


.NETSampleSections

How to Remove All Section Breaks in a Document?

With version 14.0, we introduced document section breaks that allow you to have different page formats in the same document. Version 15.0 implements page columns that can be adjusted section-wise.…


.NETPrintingSample

Batch Printing: How to Print Documents in One Print Job

A typical requirement when printing loads of documents is managing the print jobs. A group of separate documents might be subsumed in a single print job. We just published a new sample in our…