禁用文本框 (.net) 中的值或将其设为只读

本文关键字:只读 文本 net | 更新日期: 2023-09-27 17:55:21

我有一个具有初始值的文本框(多行),现在当用户尝试向其附加值时,他应该无法修改初始值。 有可能吗?

禁用文本框 (.net) 中的值或将其设为只读

因此,如果您在框中有"lorem ipsum",您希望用户能够添加但不能删除该文本?如果是这样,那么使用 RichTextBox,您可以通过选择的 .SelectionProtected 属性执行此操作,该属性会将区域标记为有效只读。

rtBox.Select(0, (rtBox.Text = "I am fixed content").Length);
rtBox.SelectionProtected = true;
rtBox.AppendText(Environment.NewLine);

另一种选择是使用屏蔽文本框。这样,如果您愿意,可以拥有多个保护区。

例如,您可以将掩码设置为:

"This c'annot be ch'anged. But this c'an': CCCCCCCCCC"

这将显示为:

"This cannot be changed. But this can: __________"
输入尽可能多的

"C"作为您希望用户能够输入的字符。如果您愿意,还可以将提示符更改为空格而不是"_"。

为方便起见...

以下是屏蔽字符的列表和说明

(摘自 http://www.c-sharpcorner.com/uploadfile/mahesh/maskedtextbox-in-C-Sharp/)。

0 - Digit, required. Value between 0 and 9.
9 - Digit or space, optional.
# - Digit or space, optional. If this position is blank in the mask, it will be rendered as a space in the Text property.
L - Letter, required. Restricts input to the ASCII letters a-z and A-Z.
? - Letter, optional. Restricts input to the ASCII letters a-z and A-Z.
& - Character, required.
C - Character, optional. Any non-control character.
A - Alphanumeric, required.
a - Alphanumeric, optional.
.  - Decimal placeholder.
, - Thousands placeholder.
: - Time separator.
/ - Date separator.
$ - Currency symbol.
< - Shift down. Converts all characters that follow to lowercase.
> - Shift up. Converts all characters that follow to uppercase.
| - Disable a previous shift up or shift down.
' - Escape. Escapes a mask character, turning it into a literal. "''" is the escape sequence for a backslash.

所有其他字符 - 文字。所有非遮罩元素都将在掩码文本框中显示为自身。文本在运行时始终占据掩码中的静态位置,并且不能由用户移动或删除。

您可以使用

RichTextBox SelectionProtected属性。