2010-12-01 11 views
0

Je crée une application personnalisée de messagerie Microsoft Word Mailmail en utilisant C#. Mon seul problème est d'essayer d'utiliser la commande InsertSymbol (à partir de Microsoft.Office.Interop.Word). Le but est de déposer un symbole de case cochée si la valeur du champ est vraie, et une case vide si la valeur du champ est fausse.InsertSymbol dans Word en utilisant C#

Microsoft a une définition de cette commande here sans aucun exemple concret.

La façon dont j'ai mon commandement mis en place est la suivante:

Object oFont = "Wingdings"; 

Object oUnicode = "true"; 

Object oBias = Word.WdFontBias.wdFontBiasDontCare; 

oWord.Selection.InsertSymbol(254, ref oFont, ref oUnicode,ref oBias); 

Lorsque je tente d'exécuter cette commande, je reçois l'erreur « Ce n'est pas un nombre valide. » Il n'y a pas beaucoup d'exemples de cette commande en ligne et j'espérais des idées. Merci.

Répondre

1

J'ai trouvé la réponse. Mon problème était entourant la valeur de oUnicode avec des citations. J'ai enlevé les citations et maintenant cela fonctionne parfaitement. Je voulais juste faire savoir aux gens que ça fonctionne maintenant.

3

Merci Robert pour le partage de cette solution:

Object oFont = "Wingdings"; 
Object oUnicode = true; 
Object oBias = Word.WdFontBias.wdFontBiasDontCare; 
oWord.Selection.InsertSymbol(254, ref oFont, ref oUnicode,ref oBias); 

Il fonctionne bien!

0

Eh bien, je n'ai pas eu votre code pour travailler. Mais il m'a frappé, que VSTO a une perception différente de faux et vrai: Vrai est 1 (le numéro 1) donc dans le code ci-dessus, vous devez définir:

oUnicode = 1;//NOT "true" and that IS 1 truth 

Faire que je suis le code fonctionne correctement. Cela communique également avec la description de l'erreur ('pas un nombre valide')