RichTextBoxのSelectionProtectedプロパティをTrueにすることにより、文字列の一部分を変更できないようにできます。なお、SelectionProtectedがTrueとなっている部分を変更しようとすると、RichTextBox.Protectedイベントが発生します。
次の例では、RichTextBox1に文字列を追加し、「ここは編集不可。」の部分を変更できないようにしています。また、この部分を変更しようとすると、メッセージボックスが表示されます。
Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load RichTextBox1.AppendText("こんにちは。") RichTextBox1.AppendText("ここは編集不可。") '"ここは編集不可。"を選択 RichTextBox1.Select(RichTextBox1.Text.Length - 8, 8) '選択部分を保護する RichTextBox1.SelectionProtected = True RichTextBox1.AppendText("さようなら。") 'Protectedイベントハンドラの追加 AddHandler RichTextBox1.Protected, _ AddressOf RichTextBox1_Protected End Sub Private Sub RichTextBox1_Protected( _ ByVal sender As Object, ByVal e As EventArgs) '保護されている部分を編集しようとした時 MessageBox.Show("そこは変更できません。") End Sub
private void Form1_Load(object sender, System.EventArgs e) { RichTextBox1.AppendText("こんにちは。"); RichTextBox1.AppendText("ここは編集不可。"); //"ここは編集不可。"を選択 RichTextBox1.Select(RichTextBox1.Text.Length - 8, 8); //選択部分を保護する RichTextBox1.SelectionProtected = true; RichTextBox1.AppendText("さようなら。"); //Protectedイベントハンドラの追加 RichTextBox1.Protected += new EventHandler(RichTextBox1_Protected); } private void RichTextBox1_Protected(object sender, EventArgs e) { //保護されている部分を編集しようとした時 MessageBox.Show("そこは変更できません。"); }