Örökölt ActiveX (Forms 2.0) vezérlőtípusok
Örökölt ActiveX (Forms 2.0) vezérlőtípusok
OLE-objektumok és beágyazott tartalom kezelése bemutatja, hogyan lehet elérni egy beágyazott Microsoft Forms 2.0 ActiveX vezérlőt keresztül OleFormat.OleControl és átkonvertálni azt az absztrakt Forms2OleControl alaposztályra. Aspose.Words FOSS a .NET számára szintén öt erősen típusos alosztályt tesz elérhetővé a Word által támogatott konkrét vezérlőtípusokhoz – CheckBoxControl, OptionButtonControl, TextBoxControl, CommandButtonControl, és MorphDataControl – mindegyik a Aspose.Words.Drawing.Ole namespace, egy vezérlőspecifikus tag hozzáadása a tulajdonságokhoz Forms2OleControl már biztosítja (Caption, Value, Enabled, Type, GroupName, ForeColor, BackColor, Width, Height, Name, ChildNodes).
CheckBoxControl és OptionButtonControl
CheckBoxControl kibővíti a MorphDataControl elemet, és hozzáadja a Checked (egy bool) a vezérlő be/ki állapotához. OptionButtonControl szintén kibővíti a MorphDataControl elemet, és hozzáadja a Selected (egy bool) – egy olyan kölcsönösen kizáró opciógombok csoportjához, amelyek ugyanazt a GroupName osztják.
TextBoxControl
TextBoxControl kibővíti a MorphDataControl elemet, és hozzáadja a Text (egy string), a vezérlő megjelenített és szerkeszthető szövegét.
CommandButtonControl
CommandButtonControl közvetlenül Forms2OleControl osztályból örököl (nem MorphDataControl), és saját konstruktorral rendelkezik. Egy gombot képvisel, amely a Wordben kattintásra makrót futtat, a gombcímke az örökölt Caption tulajdonságon keresztül érhető el.
MorphDataControl: a közös alap az adatbevitel-vezérlőkhöz
MorphDataControl egy aggregált alap hat kapcsolattípushoz – jelölőnégyzet, kombinált lista, listamező, választógomb, szövegmező és kapcsológomb. CheckBoxControl, OptionButtonControl és TextBoxControl mindegyike örökli, átveszi a tagjait, és saját, típusra jellemző egy tulajdonságot ad hozzá.
Tippek és bevált gyakorlatok
- Olvassa el a
Forms2OleControl.Type(egyForms2OleControlTypeérték) értékét, hogy azonosítsa a vezérlőt, mielőtt egy konkrét alosztályra konvertálná – nem mindenForms2OleControltartozik az itt tárgyalt öt erősen típusos alosztály közé. - Használja a
GroupNameelemet, hogy többOptionButtonControlpéldányt egy kölcsönösen kizáró halmazba csoportosítson, ahogyan a Word a választógombokat csoportosítja. - Érje el a kereten vagy többoldalas konténeren belüli beágyazott vezérlőket az örökölt
ChildNodes(egyForms2OleControlCollection) segítségével, függetlenül attól, hogy a konténer mely alosztályból származik.
Általános problémák
| Probléma | Ok | Javítás |
|---|---|---|
A Forms2OleControl CheckBoxControl-re való átkonvertálása InvalidCastException-t dob | A vezérlő egy másik Forms 2.0 vezérlőtípus (például egy TextBoxControl vagy OptionButtonControl) | Ellenőrizze a Forms2OleControl.Type értékét, mielőtt egy adott alosztályra konvertálna |
OptionButtonControl.Selected nem viselkedik kölcsönösen kizáró módon a testvérvezérlőkkel | A vezérlők nem osztják meg ugyanazt a GroupName-t | Állítsa be ugyanazt a GroupName értéket a halmaz minden OptionButtonControl elemére |
CommandButtonControl.Caption üres | A gomb felirata az örökölt Forms2OleControl.Caption alapján származik, nem egy CommandButtonControl-specifikus tulajdonságból | Olvassa a Caption-t, ne egy nem létező, csak CommandButtonControl-ra vonatkozó tagot |
FAQ
Hogyan tudhatom meg, hogy a Forms2OleControl valójában melyik erősen típusos vezérlőosztály?
Olvassa el a Type tulajdonságát (Forms2OleControlType), vagy próbálkozzon egy átkonvertálással a várt specifikus alosztályra, például CheckBoxControl vagy TextBoxControl.
Mi a különbség a MorphDataControl és a Forms2OleControl között?
Forms2OleControl az összes Forms 2.0 vezérlő absztrakt alapszintje. MorphDataControl egy specifikusabb absztrakt alapszint, amely maga is kiterjeszti a Forms2OleControl osztályt, és a jelölőnégyzet, kombinált lista, listamező, választógomb, szövegmező és kapcsológomb vezérlőtípusok között közös.
Hogyan olvashatom ki egy jelölőnégyzet vezérlő bejelölt állapotát?
Alakítsa át a Forms2OleControl elemet CheckBoxControl típusra, és olvassa el a Checked tulajdonságát.
Kiterjeszti a CommandButtonControl a MorphDataControl osztályt, mint a többi?
Nem – CommandButtonControl közvetlenül örökli Forms2OleControl, mivel egy parancsgomb nem adatbevitel-vezérlő.
API Reference Összegzés
| Osztály | Leírás |
|---|---|
MorphDataControl | Absztrakt bázis a jelölőnégyzet, kombinált lista, listamező, választógomb, szövegmező és kapcsológomb vezérlők számára |
CheckBoxControl | Jelölőnégyzet vezérlő; kiterjeszti a MorphDataControl; hozzáadja a Checked |
OptionButtonControl | Választógomb vezérlő; kiterjeszti a MorphDataControl; hozzáadja a Selected |
TextBoxControl | Szövegmező vezérlő; kiterjeszti a MorphDataControl; hozzáadja a Text |
CommandButtonControl | Parancsgomb vezérlő; közvetlenül kiterjeszti a Forms2OleControl |