visual studio net entre diferencia descargar creacion caracteristicas año c# .net vb.net visual-studio

c# - net - Visual Studio: nuevos valores de propiedad "predeterminados" para controles heredados



visual basic.net pdf (1)

Estoy buscando ayuda para establecer un nuevo valor de propiedad predeterminado para un control heredado en Visual Studio:

class NewCombo : System.Windows.Forms.ComboBox { public NewCombo() { DropDownItems = 50; } }

El problema es que la propiedad de clase de base DropDownItems tiene un atributo ''predeterminado'' establecido que tiene un valor diferente (no 50). Como resultado, cuando arrastro el control en un formulario, el archivo de diseñador obtiene un mycontrol.DropDownItems = 50; explícito.DropDownItems mycontrol.DropDownItems = 50; línea.

Al principio esto no importa. Pero si más tarde cambio mi clase heredada a DropDownItems = 45; en el constructor esto no afecta a ninguno de los controles en ningún formulario, ya que todos esos archivos de diseño todavía tienen el valor 50 codificado en ellos. Y el objetivo era tener el valor establecido en un solo lugar para poder tratar con el cliente cambiando de opinión.

Obviamente, si estuviera creando mi propia propiedad personalizada en la subclase, podría darle su propio atributo predeterminado de diseñador de lo que quisiera. Pero aquí estoy queriendo cambiar los valores predeterminados de las propiedades en la base. ¿Hay alguna forma de aplicar atributos de Visual Studio a un miembro de la clase base? ¿O hay alguna otra solución para obtener el resultado que quiero?


En su clase derivada, necesita anular (o sombrear usando nuevo ) la propiedad en cuestión y luego volver a aplicar el atributo de valor predeterminado.