2009-03-15 12 views
8

¿Cómo me notifican de un cambio de selección en un cuadro de texto en .NET 2.0? No he podido encontrar un evento SelectionChanged o un método OnSelectionChanged. ¿Cuál es la mejor solución para esto (sin tener que invocar, por supuesto)?Windows Forms: Evento SelectionChanged para la clase TextBox

+0

lo ¿te refieres a "Selección modificada"? ¿Quiere decir cuando un usuario mueve el cursor de un cuadro de texto a otro? – Galilyou

+1

Creo que se refiere a una selección del texto dentro de la caja. – Hamid

+0

Quiero decir que el usuario ha cambiado lo que se selecciona dentro del cuadro de texto. Suponiendo que el cuadro de texto contiene "zorro marrón rápido" con "marrón" seleccionado y el usuario selecciona "zorro" en su lugar, necesito que me notifiquen. –

Respuesta

5

Puede usar un RichTextBox y establecer Multiline en falso. Tiene un OnSelectionChanged.

+0

Una gran idea. Cualquier desventaja? –

+0

No lo sé desde lo más alto de mi cabeza. Puede ser que necesite un pequeño ajuste para que sea tan tonto como un TextBox;) – Hamid

+2

@Vulcan Eager: RichTextBox tiene la característica molesta de cambiar todas las terminaciones de línea '\ r \ n' en la propiedad' Text' a '\ n' tan pronto como se vuelve visible. –

1

Bueno, creo que this puede ayudar! Tendrá que usar RichTextBox todavía.

0

También puede usar TextBox.

Escribir un funktion GetMyPosition() y poner en los eventos

  • TextChanged()
  • MouseClick()
  • KeyUp() (En KeyDown() la posición no se cambia)

Cuando se desea notificar al highliting de un texto, también hay que utilizar - MouseHover()

Cuestiones relacionadas