I'm writing a simple VS add-in and would like to programmatically invoke the "Document Format" option (under Edit) within code. Google isn't being very friendly to me today....
Command cmd = _applicationObject.Commands.Item("Edit.FormatDocument", -1);
object dummy = null;
_applicationObject.Commands.Raise(cmd.Guid, cmd.ID, ref dummy, ref dummy);
If you have a reference to your document (of type Window), and you have a reference to the _DTE object, you can call it like this:
myDocument.Activate();
myDTE.ExecuteCommand("Edit.FormatDocument", string.Empty);
Most of the time, you can get a reference to the _DTE object from the parameters passed into your add-in.
You'll need to use the standard command editors, called with the VSStd2KCmdId.FORMATDOCUMENT command enumeration.
来源:https://stackoverflow.com/questions/813119/how-do-you-call-document-format-programmatically-from-c