Place el control RichTextBox en el formulario
Set nombre del formulario como Form1
nombre
Conjunto RichTextbox como RichTextBox1
Si no desea permitir al usuario copiar la propiedad ShortcutsEnabled conjunto de texto RichTextBox1 en False
Ir a Proyecto-> Añadir componente, introduzca el nombre de los componentes ReadOnlyRichTextBox.cs
ReadOnlyRichTextBox.cs Entonces abiertas y pegar el código siguiente:
using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
namespace <Replace with your app namespace>
{
public partial class ReadOnlyRichTextBox : RichTextBox
{
[DllImport("user32.dll")]
static extern bool HideCaret(IntPtr hWnd);
public ReadOnlyRichTextBox()
{
this.ReadOnly = true;
}
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
HideCaret(this.Handle);
}
}
}
Desde el Explorador de soluciones "abrir su Form1.Designer.cs" y vuelva a colocar en este archivo las siguientes líneas:
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
con
this.richTextBox1 = new ReadOnlyRichTextBox();
y
System.Windows.Forms privadas.RichTextBox richTextBox1;
con
privada ReadOnlyRichTextBox RichTextBox1;
Sé que esta es una publicación anterior y está etiquetada como .NET 3.5. Sin embargo, me gustaría dar una actualización a esto para aquellos que lo buscaron y pueden usar .NET 4.0. En .NET 4.0, el control RichTextBox ahora tiene una propiedad IsReadOnlyCaretEnabled que por defecto es False, por lo que la intercalación se oculta automáticamente si establece ReadOnly en True. Si quiere que ReadOnly RichTextBox muestre el símbolo de intercalación, puede establecer IsReadOnlyCaretEnabled en True. – Jim
Mi respuesta te soluciona el problema? Si es así, puede considerar marcarlo como una respuesta. Está en C#, pero debería funcionar en VB, creo. :) – Pedro77
Hola, ¿consideras marcar mi respuesta como una solución? – Pedro77