在文本框中,保护第一个单词,但允许添加/编辑这些单词之后的文本

Posted

技术标签:

【中文标题】在文本框中,保护第一个单词,但允许添加/编辑这些单词之后的文本【英文标题】:In a textbox, protect the first words, but allow adding/editing to text past those words 【发布时间】:2012-04-10 10:19:02 【问题描述】:

所以我有一个 C# 文本框(使用 .NET 表单),我将在其中接受用户字符串进行某些输入。

这个字符串的开头已经有文本(参数),无论如何都将存在于字符串的开头。它必须在那里。我希望他们知道这一点,但不能从文本框中删除单词(所以他们不会认为他们已经将其删除了)

所以这些第一个参数不能被删除或编辑。

这些参数之后的任何文本都可以正常添加或修改。

这在 C# 中可行吗?

【问题讨论】:

你是说web forms还是winforms? Winforms,很抱歉造成混乱。 【参考方案1】:

假设 WinForms,您可以改用 RichTextBox 控件。设置Multiline=False 属性,下面是锁定第一个字符的示例:

richTextBox1.Text = "LOCKED";
richTextBox1.SelectAll();
richTextBox1.SelectionProtected = true;

或者这个,它只会锁定前六个字符“LOCKED”,但允许用户更改句子的其余部分:

richTextBox1.Text = "LOCKED information";
richTextBox1.Select(0, 6);
richTextBox1.SelectionProtected = true;

【讨论】:

+1 哇,每天都学新东西!击败我输入的答案以使用蒙面文本框很长一段路。 有些日子,.NET 简直太棒了。无疑让开发时间变得更轻松、更快捷。

以上是关于在文本框中,保护第一个单词,但允许添加/编辑这些单词之后的文本的主要内容,如果未能解决你的问题,请参考以下文章

在文本框中使单词加粗

动态地,在运行时,如何在 WPF 中更改文本框中某些单词的颜色?

在输入框中的光标后添加不可编辑的文本

带有不可编辑单词(标签)的文本框

从光标位置的文本框中获取文本.net

编辑标题内的文本框(第一页不同)