¿Es posible en C# tener una clase que implemente una interfaz que tenga 10 métodos declarados pero que implemente solo 5 métodos, es decir, solo definir 5 métodos de esa interfaz? En realidad, tengo una interfaz que se implementa por 3 clases y no todos los métodos son utilizados por toda la clase, así que si pudiera excluir cualquier método ???Implementando algunos métodos de una clase de interfaz-C#
Necesito esto. Puede sonar como un mal diseño pero no es de esperar. Lo que pasa es que tengo una colección de controles de usuario que necesita tener una propiedad común y en base a eso solo los estoy mostrando en tiempo de ejecución. Como es dinámico, necesito administrarlos para eso estoy teniendo propiedades. Algunas propiedades son necesarias por pocas clases y no por todas. Y a medida que aumenta el control, es posible que estas propiedades estén aumentando, según lo necesite un control que necesito tener sin utilizar. solo los métodos simulados. Por lo mismo, pensé que si hubiera una manera de evitar esos métodos en el resto de la clase, sería genial. Suena que no hay otra manera que tiene o bien la clase abstracta o funciones simulados :-(
Me parece que su interfaz no es lo suficientemente detallada, y debe aplicar el principio de segregación de la interfaz. –
¿Por qué no hacer que las propiedades comunes formen parte de la interfaz y proporcionar una propiedad especial 'Diccionario' que obtenga todas las propiedades personalizadas para un control dado? ¿O por qué no usar interfaces adicionales separadas para cada tipo de control especial? De todos modos, tiene algún control de que el control admite esas propiedades personalizadas. Solo hazlo usando 'is ICustomControlKind42' o' como ICustomControlKind42' y cheque nulo. – SergGr
@iPhone: ¿Pueden informar un poco más sobre esto? o puede mostrar algún enlace o ejemplo para el mismo ??? – Jankhana