2009-09-04 13 views
11

Necesito cambiar un montón de cuadros de texto para NumericUpDowns y otros cambios similares en algunos formularios en mi aplicación multiform C#. Me gustaría mantener el nombre de cada control igual que el cambio. También hay código para eventos asociados con algunos de los controles que me gustaría cambiar lo menos posible.Cambie los tipos de control (pero no los nombres) en el formulario con impacto mínimo

¿Cómo hago esto sin arruinar las cosas mal en Visual Studio? Es la versión 2008. Me preocupa que seguramente me encuentre con los temidos errores de diseñador.

Respuesta

12

hacer los cambios en el archivo designer.cs, y cruza los dedos :)

+2

Esperaba evitar eso. ;-) – Dave

+1

no veo ninguna otra manera inteligente tampoco. desafortunadamente esta es la posibilidad más rápida. dependiendo de los cambios, esto puede fallar. pero sobre todo, solo se deben esperar pequeños problemas. no olvides hacer una copia de todo el proyecto antes de probar esto; o) – Atmocreations

2

Esto puede hacer que sea un poco menos doloroso:

crear una nueva clase, derivado de cuadro de texto (hagamos llamada es MyClass). Cambie todas las apariciones de TextBox que desee cambiar, mediante el método de búsqueda y reemplazo. Luego puede cambiar MyClass y derivarlo de NumericUpDown y ver si se rompe algo.

Su única alternativa es crear una clase derivada directamente de TextBox o NumericUpdown, y luego implementar métodos compatibles con la otra. Entonces, en efecto, usted tendría un control que es compatible con NumericUpDown y TextBox.

Cuestiones relacionadas