Dinamikus menüelemek hozzáadása

Felveheti futásidejű menüelemek DynamicItemStart parancs meghatározását zászló gomb helykitöltő fájlt (.vsct) táblázat Visual Studio parancsok száma (kód) menüpont kijelző és feldolgozási utasításokat. A VSPackage helyőrző helyének betöltése után a dinamikus menü elemei kerülnek.

A Visual Studio dinamikus listákat használ a legutóbb használt listán (MRU), amely megjeleníti a nemrégiben megnyitott dokumentumok nevét és egy Windows lista, amely megjeleníti a jelenleg megnyitott ablakok nevét. DynamicItemStart A zászló parancsmeghatározása azt jelzi, hogy a helyőrző parancs továbbra is nyitva van a VSPackage számára. Amikor megnyitja a VSP csomagot, a helyőrző helyére 0 vagy több parancs lép be, amelyeket futás közben hoznak létre, és hozzáadják a dinamikus listához. Nem jeleníthető meg a menü abban a menüben, ahol a dinamikus lista megjelenik a VSPackage megnyitása közben. Dinamikus lista kitöltéséhez a Visual Studio arra kéri a VSPackage parancsokat, hogy olyan azonosítót keresjenek meg, amelynek első karakterei megegyeznek a töltő azonosítóval. Ha a Visual Studio észleli a megfelelő parancsot, hozzáadja a dinamikus lista parancsnevét. Ezután megnöveli az azonosítót, és egy másik megfelelő parancsot keres egy dinamikus lista hozzáadására, amíg nincs több dinamikus parancs.

Ez a lépésenkénti útmutató bemutatja, hogyan állíthatja be az indítási projektet egy Visual Studio megoldásban a Solution Tools eszköz segítségével. A menüvezérlőt az aktív megoldási projektek dinamikus legördülő listájával használja. Ennek megakadályozása érdekében a megoldás nem nyitott, vagy ha a megoldás csak egy projektet tartalmaz, a VSPackage csak akkor töltődik be, ha a megoldás több projektet tartalmaz.

Hozzon létre egy DynamicMenuItems nevű VSIX projektet.

Amikor megnyit egy projektet, adjon hozzá egy sablont a felhasználói parancselemhez, és nevezze el a DynamicMenu nevet. További információ: Bővítés létrehozása a menüparanccsal.

A menüvezérlő létrehozása az eszköztáron lévő dinamikus menüelemekből a következő elemeket kell megadnia:

A vezérlő menüjét tartalmazó csoport két parancsja, a másik pedig a legördülő menüben található menüelemek

Ugyanolyan típusú MenuController menütétel

Két gomb, amely a menüelemek helyőrzőjévé válik, és egy másik, amely az eszköztár ikonját és eszköztippjeit tartalmazza.

A DynamicMenuPackage.vsct programban a parancsazonosítók definíciója. Lépjen a Szimbólumok részre, és cserélje ki az IDSimbol elemeket a guidDynamicMenuPackageCmdSet GuidSymbolblokkra. Meg kell határoznia az IDSimbol elemeket a két csoporthoz, a menüvezérlőhöz, a helyőrző parancshoz és a bind parancshoz.

Két gomb hozzáadása: a dinamikus menüelemek helyőrzőjeként és a MenuController kötelező érvényűvé tételéhez.

A MyMenuControllerGroup gomb töltőanyagának szülő eleme. Adja hozzá a DynamicItemStart, a DynamicVisibility és a TextChanges parancssori opciókat a helyőrző gombra. A ButtonText nem jelenik meg.

A snap gomb tartalmaz egy ikont és egy ballon szöveget. A MyMenuControllerGroup gomb szülői kötése is. A NoShowOnMenuController parancslista hozzáadódik annak biztosításához, hogy a gombok ne jelenjenek meg a vezérlő legördülő menüjében, és a FixMenuController parancsjelzője állandó kötéseket készít.

Adjon hozzá egy ikont a projekthez (az "erőforrások" mappába), majd adj hozzá egy linket a .vsct fájlba. Ebben a lépésben a projekt sablonban szereplő nyílikonot használjuk.

Adja hozzá a VisibilityConstraints szekciót a parancs szakasz előtt a szekció karakterek előtt. (A karakterek hozzáadásakor figyelmeztetés jelenhet meg.) Ebben a részben a menüvezérlő csak akkor jelenik meg, ha a megoldás több projektet tartalmaz.

Kapcsolódó cikkek