Laden...

Forenbeiträge von Cchat Ingesamt 6 Beiträge

08.09.2011 - 15:34 Uhr

HM....


            CommandBar vsBarMultiItem = rootBars["Cross Project Multi Item"];

            var multiselection = CommandManager.Instance.AddSubMenu(vsBarMultiItem, "MULTISELECT", "MULTISELECT", true, 8);


            // Manipulator ->
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandAssemblyGUIDOnSolution, false, 1);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandProjectGUIDOnSolution, false, 2);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandSelfReferenceOnSolution, false, 3);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandAssemblyInfoOnSolution, false, 4);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandDefaultReferecesOnSolution, false, 5);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandThirdPartyOnSolution, false, 6);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandKonfigManagerOnSolution, false, 7);
            CommandManager.Instance.AddCommandBarButton(multiselection, Consts.COMMAND_NAME_CommandOutputPathOnSolution, false, 8);

Ich konnte zwar einfügen, es wird aber nicht angezeigt

08.09.2011 - 12:44 Uhr

Ich versuche noch mal, ich kann AddIn(RefSwitch) für VS2010 schreiben.
Aber diese AddIn Funktion kann ich nur für Kontexmenü von Solution und Projekte einbauen!

Ich kann im Moment diesen Kontextmenu einbauen:

(siehe Anhang, Bild 1)

Jedoch möchte ich diese AddIn auch bei dem Kontextmenu erscheinen, wenn ich mehrere Projekte markieren würde:

(siehe Anhang, Bild 2)

Dieser Code führt dazu, dass die AddIn bzw. Befehle in Kontextmenü eingefügt wird!


            // Kontext Menu
            var rootBars = (CommandBars)this._applicationObject.CommandBars;
            int a = this._applicationObject.ContextAttributes.Count;

            
            // Menu unter Solution
            CommandBar commandBar = rootBars[Consts.VsSolutionExplorer.Solution];
            // Solution -> RefSwitch
            var refSwitchPopUp = CommandManager.Instance.AddSubMenu(commandBar, Consts.COMMAND_RefSwitch_Base, Consts.COMMAND_RefSwitch_Base, true, 6);

Wenn ich die Befehle im Kontextmenu eingefügt hätte, wie könnte ich dann die "markierte Projekte" auflisten?

Heißt du das willst in deinem Addin verhindern das VS diesen Dialog anzeigt wenn immer sich irgendeine SourceDatei außerhalb des VS ändert? Wenn ja dann ist das m.E. nach der falsche weg!

Nein, du hast da falsch verstanden, ich kann über die Schnittstelle von "Project" bzw, "VSProject" aus nicht alles ändern was ich möchte.
Daher mach ich es über XDocument und verändere das Projekt!
Ich möchte, dass es nach jeder Änderung, das Projekt automatisch "Erneut Laden" sollte. Damit die Meldung nicht mehr kommt.

Hoffe, du kannst mich jetzt besser verstehen.
mfg

07.09.2011 - 15:16 Uhr

Folgendes, ich kann zwar AddIn für Solution, Projekte schreiben.

Aber es funktioniert nur wenn ich einzelne Datei auswähle, wie könnte ich also den meine AddIn in dem Kontextmenu so einbaue, sodass man beim markieren auch sehen kann?

Es folgt, wie kann ich die Projekte bzw. Files auflisten?

Das weiterem.
Wenn ich ein Projekt-Datei extern ändern würde, dann verlangt VS2010 von mir, dass ich das Projekt "erneut Laden" muss, ich möchte dies automatisch gesehen, wie kann ich es tun?
Also Projekte mit c# erneut laden? Ich bekomme die Projekte als "Project" oder "VSProject" Objekt.

Wäre schön, wenn jemand mir helfen könnte.
mfg

01.09.2011 - 10:29 Uhr
     
Solution solution = this._applicationObject.Solution;
foreach (Project proj in solution.Projects)
{...
}

Leider klappt es nur solange wenn keinen Ordner vorhanden ist, sonst bekomme ich den Ordner als ein Project zurück?

Also die Projekte müssen direkt unter Solution befinden?
Oder gibt es eine andere Möglichkeit? Also Rekursiv meinte ich.
mfg

30.08.2011 - 09:05 Uhr

Ich schreibe gerade einen Addin, welcher man die Framework Version für ganze Solution ändern kann, der Benutzer sollte aber nur die gültige FrameVersion setzen können.

Ich denke, XML ist eine gute Lösung, danke.

29.08.2011 - 17:44 Uhr

Wie kann ich alle Framework Version auflisten (per Code), welche VS2010 anbietet?

mfg