Ich schreibe ein einfaches VS-Add-In und möchte programmgesteuert die Option "Dokumentformat" (unter Bearbeiten) im Code aufrufen. Google ist heute nicht sehr freundlich zu mir.Wie rufen Sie "Document Format" programmgesteuert von C# auf?
Antwort
Command cmd = _applicationObject.Commands.Item("Edit.FormatDocument", -1);
object dummy = null;
_applicationObject.Commands.Raise(cmd.Guid, cmd.ID, ref dummy, ref dummy);
Da es ein erstes Mal ist, es zu überprüfen, konnte ich nicht verstehen. Können Sie bitte den Typ des '_applicationObject' und seinen Namespace angeben. Ich habe ein wenig durchsucht, dass ich den EnvDTE80-Namespace verwenden sollte, aber ich konnte nicht fortfahren. Irgendein Codesnippet wird sehr hilfreich sein. –
Sie müssen die Standard-Befehlseditor verwenden, aufgerufen mit der VSStd2KCmdId.FORMATDOCUMENT Befehl Enumeration.
Wenn Sie einen Verweis auf das Dokument (vom Typ Fenster) haben, und Sie haben einen Verweis auf das _DTE Objekt, Sie es so nennen kann:
myDocument.Activate();
myDTE.ExecuteCommand("Edit.FormatDocument", string.Empty);
Die meiste Zeit, Sie können einen Verweis auf das _DTE-Objekt aus den Parametern abrufen, die an Ihr Add-In übergeben wurden.
Gibt es eine Möglichkeit, Dokumente zu formatieren, ohne sie zu öffnen? Ich möchte alle Dokumente im Projekt mit einem Klick formatieren. – Hooch
Ich glaube nicht. Sie können das Dokument öffnen, formatieren und anschließend schließen. –
- 1. Rufen Sie JavaScript-Funktion von C# auf?
- 2. Rufen Sie den Standardbrowser von C# auf?
- 3. Rufen Sie Python von C++
- 4. Rufen Sie den Hardware-Zurück-Button programmgesteuert auf?
- 5. So rufen Sie einen Webservice programmgesteuert in asp.net auf
- 6. Eclipse JDT: Rufen Sie 'richtigen Einzug' programmgesteuert auf?
- 7. Rufen Sie die Telefonnummer des Geräts programmgesteuert
- 8. So rufen Sie ein Eclipse-Bereinigungsprofil programmgesteuert auf?
- 9. Rufen Sie Java-Code von C#
- 10. Rufen Sie den F # -Code von C#
- 11. Rufen Sie ein in xaml von C#
- 12. So rufen Sie MSBuild von C#
- 13. Rufen Sie eine Lua-Funktion von C++
- 14. So rufen Sie window.alert ("Nachricht") auf; von C#?
- 15. So rufen Sie die CORBA-Schnittstelle von C# aus auf?
- 16. Rufen Sie jQuery auf von anwenden
- 17. Wie rufe ich C++ - Compiler programmgesteuert auf?
- 18. So rufen Sie Path.Combine von MSBuild auf?
- 19. Wie rufen Sie eine verwaltete (C#) Funktion aus C++?
- 20. rufen Sie den IntentService von onDestroy auf
- 21. Rufen Sie Javascript von C# mit C# 4.0 Dynamische Funktion
- 22. So rufen Sie eine schmucklose C++ - Funktion von C++/CLI
- 23. Rufen Sie die SVN-Bibliothek auf, die die installierte Version von TortoiseSVN programmgesteuert verwendet
- 24. Rufen Sie Mongoimport von Python-Skript
- 25. Rufen Sie Magier mit PowerShell 2.0 auf und rufen Sie den Operator auf (d. H. &)
- 26. So rufen Sie Monitor.TryEnter auf
- 27. Wie rufen Sie einen AppleScript-Prozess von AIR auf?
- 28. Format Laufwerk von C++
- 29. So rufen Sie XML-Knotenattribute in C#
- 30. C# So rufen Sie mit mehr als einem Parameter auf
Haben Sie Resharper probiert? Es kann die gesamte Lösung für Sie auf einmal umformatieren. (Ich nehme an, das hilft nicht, aber ich muss es versucht haben ... ;-)) – Rashack
Nein, ich versuche nur mein eigenes kleines Werkzeug zum automatischen Schließen von Klammern zu drehen (ja, ich weiß, Resharper macht das auch, aber wo ist der Spaß daran? ??) – BFree