2009-07-31 4 views
0

Est-il possible d'étendre un contrôle de graphique dundas ou tout autre contrôle propriétaire (binaire distribué) où les sources n'utilisent pas les classes partielles?Est-il possible d'étendre un contrôle de graphique dundas en utilisant une classe partielle?

Je pensais que cela pourrait se faire aussi longtemps que la dll a été fait référence, mais j'ai eu du mal à essayer de trouver un moyen de le faire.

J'essaye de d'éviter la création d'un contrôle serveur ASP .NET qui hérite de la classe Dundas.Charting.WebControl.Chart.

Répondre

1

Non, d'utiliser une classe partielle de la déclaration principale de cette classe doit déjà utiliser le mot-clé partiel, généralement pas le cas.

L'héritage est possible si la classe n'est pas marquée comme étant scellée. Vous semblez ne pas vouloir cela, mais ce pourrait être le chemin le plus court.

La dernière option, mais qui fonctionne toujours, est d'intégrer le contrôle dans un wrapper qui étend ses fonctionnalités.

0

si la classe est fermée, vous ne pouvez pas en hériter d'ajouter vos propres fonctionnalités. Si vous utilisez .net 3.5, vous pouvez créer des extensions de classe pour la classe que vous souhaitez ajouter. Si aucune de ces options n'est viable, vous devrez créer une classe wrapper.

+0

Les extensions de méthode ont certaines limitations, par exemple les propriétés ne peuvent pas être créées de cette façon. –

1

Non, ce n'est pas possible. Toutes les définitions de partiels doivent résider dans le même assembly. Votre façon d'étendre peut être de vous hériter de la classe Chart.

+0

+1, j'ai oublié qu'une classe doit être complète en 1 assemblage. –

Questions connexes