J'ai encore un petit problème (j'espère) et je ne sais pas comment accéder à certaines propriétés de présentation fournies par PowerPoint (mais je ne sais pas Même savoir comment google ou chercher sur le site :() à partir de C# Je vais expliquer, nous pouvons accéder à une propriété TextRange
à la fois en C# et VBA, via un assembly interop et MS-office-intégré VBA éditeur respectivement. C'est bon, mais cette propriété contient deux entités identiques - Runs
VBA permet d'y accéder en tant que méthode et en tant que propriété (de plus, Runs
l'intérieur des objets de propriété est utile), mais la propriété Runs
n'est pas accessible via l'assembly interop, Runs()
méthode est accessible uniquement (et il renvoie des objets d'exécution de texte.) J'ai creusé dans l'assembly interop utilisant .NET Reflector mais j'ai hav e n'a rien trouvé en rapport avec la propriété Runs
(bien que les propriétés ayant des noms uniques différents de ceux des méthodes aient leurs propres méthodes get_Property()
et set_Property()
). Il semble que la propriété Runs
est manquante dans l'assembly interop pour l'interface TextRange
. Franchement, je ne suis pas sûr. :(Accéder à des entités COM de même nom à partir d'assemblys .NET
Puis-je obtenir en quelque sorte l'accès Runs
propriété de C#? Je ne suis pas familier avec COM, etc, et je l'espère pour votre aide. Merci.
Merci pour la réponse. Non, j'utilise Microsoft.Office.Interop.PowerPoint.TextRange, et il ne contient pas de définition pour get_Runs(). :(Aussi, malheureusement, je dois noter que j'utilise C# 2.0 et PowerPoint 2003. –
Microsoft.Office.Interop.PowerPoint.TextRange a une méthode Runs(), ce n'est pas une propriété.Méfiez-vous que ces classes TextRange ne sont pas identiques, vous pouvez Ne pas mélanger un TextRange Word avec un TextRange PowerPoint –
Cependant Microsoft.Office.Interop.PowerPoint.TextRange.Runs est également une propriété, et il est assez vu de VBA.Vous l'avez remarqué ci-dessus dans la réponse. voyez, je pointe la même entité à la fois de C# et VBA Bien sûr, je ne peux pas mélanger TextRange-s à partir d'espaces de noms Office et PowerPoint, mais ce n'est pas nécessaire, je veux juste obtenir la propriété .TextRange.Runs.Count. raison de la question. :) Mais ... Probablement puis-je mettre à jour la bibliothèque interop générée quand il n'y a pas de code source? Je voudrais l'améliorer avec quelque chose comme get_RunsData(). Quelque chose comme ça je suppose. –