Esta documentación está archivada y no tiene mantenimiento.

RichTextBox (Clase)

Representa un control RichTextBox de Windows.

Espacio de nombres: System.Windows.Forms
Ensamblado: System.Windows.Forms (en system.windows.forms.dll)

[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)] 
public class RichTextBox : TextBoxBase
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */ 
public class RichTextBox extends TextBoxBase
ComVisibleAttribute(true) 
ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) 
public class RichTextBox extends TextBoxBase
No aplicable.

Con el control RichTextBox, el usuario puede escribir y editar texto. El control también proporciona características de formato más avanzadas que el control TextBox estándar. El texto se puede asignar directamente al control o se puede cargar desde un archivo de formato de texto enriquecido (RTF) o de texto sin formato. Al texto del control se le puede asignar formato de carácter y párrafo.

El control RichTextBox ofrece varias propiedades que se pueden emplear para aplicar formato a cualquier parte del texto del control. Para cambiar el formato del texto, primero se debe seleccionar. Sólo se le puede asignar formato de carácter y párrafo al texto seleccionado. Una vez configurado el formato de una sección de texto seleccionada, todo el texto que se escriba a continuación tendrá el mismo formato, hasta que se realice un cambio de configuración o se seleccione una sección diferente del documento del control. La propiedad SelectionFont permite cambiar el texto a negrita o a cursiva. Esta propiedad también se puede utilizar para cambiar el tamaño y el tipo de letra del texto. La propiedad SelectionColor permite cambiar el color del texto. Para crear listas con viñetas se puede utilizar la propiedad SelectionBullet. Para ajustar el formato de párrafo, también es posible establecer las propiedades SelectionIndent, SelectionRightIndent y SelectionHangingIndent.

El control RichTextBox tiene métodos que proporcionan funciones para abrir y guardar archivos. El método LoadFile permite cargar un archivo de texto RTF o ASCII existente en el control. También es posible cargar datos desde una secuencia de datos ya abierta. El método SaveFile permite guardar un archivo en formato RTF o ASCII. De manera similar al método LoadFile, se puede utilizar el método SaveFile para guardar en una secuencia de datos abierta. El control RichTextBox también proporciona funciones para buscar cadenas de texto. El método Find se sobrecarga para buscar cadenas de texto y caracteres específicos en el texto del control.

También se puede inicializar el control a datos de RichTextBox almacenados en la memoria. Por ejemplo, se puede inicializar la propiedad Rtf a una cadena que contiene el texto que se va a mostrar, incluyendo los códigos RTF que determinan cómo se debe dar formato al texto.

Si el texto del control contiene vínculos, por ejemplo, a sitios Web, se puede utilizar la propiedad DetectUrls para que los vínculos se muestren correctamente en el texto del control. A continuación, se puede controlar el evento LinkClicked para realizar las tareas asociadas a los vínculos. La propiedad SelectionProtected permite proteger el texto del control de manera que el usuario no lo pueda manipular. Al proteger el texto del control, se puede controlar el evento Protected para determinar en qué momento el usuario ha intentado modificar el texto protegido y advertirle de que lo está o indicarle una forma estándar para manipularlo.

Las aplicaciones que ya utilizan controles TextBox se pueden adaptar fácilmente para que utilicen controles RichTextBox. No obstante, el control RichTextBox no tiene el mismo límite de capacidad de caracteres de 64 K que el control TextBox. Normalmente, se utiliza RichTextBox para proporcionar funciones de manipulación y presentación de texto similares a las de aplicaciones de procesamiento de texto como Microsoft Word.

NotaNota:

El método TextBoxBase.Undo no funciona con los eventos KeyPress ni TextChanged.

En el siguiente ejemplo de código se crea un control RichTextBox que carga un archivo RTF en el control y busca la primera instancia de la palabra "Text". Después, el código modifica el estilo, el tamaño y el color de fuente del texto seleccionado, y guarda los cambios en el archivo original. Finalmente, el control se agrega a Form en el código de ejemplo. En el ejemplo se requiere que el método creado en el código se agregue a una clase Form, y que se llame al método desde el constructor del formulario. Asimismo, se requiere que se haya creado un archivo RTF que contenga la palabra "Text" en el directorio raíz de la unidad C.

public void CreateMyRichTextBox()
{
    RichTextBox richTextBox1 = new RichTextBox();
    richTextBox1.Dock = DockStyle.Fill;


    richTextBox1.LoadFile("C:\\MyDocument.rtf");
    richTextBox1.Find("Text", RichTextBoxFinds.MatchCase);

    richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);
    richTextBox1.SelectionColor = Color.Red;

    richTextBox1.SaveFile("C:\\MyDocument.rtf", RichTextBoxStreamType.RichText);

    this.Controls.Add(richTextBox1);
}


public void CreateMyRichTextBox()
{
    RichTextBox richTextBox1 = new RichTextBox();

    richTextBox1.set_Dock(DockStyle.Fill);
    richTextBox1.LoadFile("C:\\MyDocument.rtf");
    richTextBox1.Find("Text", RichTextBoxFinds.MatchCase);
    richTextBox1.set_SelectionFont(new Font
        ("Verdana", 12, FontStyle.Bold));
    richTextBox1.set_SelectionColor(Color.get_Red());
    richTextBox1.SaveFile("C:\\MyDocument.rtf",
        RichTextBoxStreamType.RichText);
    this.get_Controls().Add(richTextBox1);
} //CreateMyRichTextBox

System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Windows.Forms.Control
         System.Windows.Forms.TextBoxBase
          System.Windows.Forms.RichTextBox
             Microsoft.Ink.InkEdit

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 Service Pack 4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter

Microsoft .NET Framework 3.0 es compatible con Windows Vista, Microsoft Windows XP SP2 y Windows Server 2003 SP1.

.NET Framework

Compatible con: 3.0, 2.0, 1.1, 1.0
Mostrar: