انواع کنترل‌های Legacy ActiveX (Forms 2.0)

انواع کنترل‌های Legacy ActiveX (Forms 2.0)

انواع کنترل ActiveX (Forms 2.0) قدیمی

کار با اشیاء OLE و محتویات جاسازی‌شده نحوه دسترسی به یک کنترل ActiveX Microsoft Forms 2.0 جاسازی‌شده را از طریق OleFormat.OleControl و تبدیل آن به کلاس انتزاعی Forms2OleControl کلاس پایه. Aspose.Words FOSS برای .NET همچنین پنج زیرکلاس با نوع قوی را برای انواع کنترل خاصی که Word پشتیبانی می‌کند، افشا می‌کند – CheckBoxControl, OptionButtonControl, TextBoxControl, CommandButtonControl, و MorphDataControl – هر یک در the Aspose.Words.Drawing.Ole namespace، افزودن یک عضو مخصوص کنترل در بالای ویژگی‌ها Forms2OleControl در حال حاضر فراهم می‌کند (Caption, Value, Enabled, Type, GroupName, ForeColor, BackColor, Width, Height, Name, ChildNodes).


CheckBoxControl و OptionButtonControl

CheckBoxControl MorphDataControl را گسترش می‌دهد و Checked (یک bool) را برای وضعیت روشن/خاموش کنترل اضافه می‌کند. OptionButtonControl همچنین MorphDataControl را گسترش می‌دهد و Selected (یک bool) را اضافه می‌کند — برای مجموعه‌ای از دکمه‌های گزینهٔ متقابلاً انحصاری که همان GroupName را به اشتراک می‌گذارند.


TextBoxControl

TextBoxControl MorphDataControl را گسترش می‌دهد و Text (یک string)، متن نمایش داده‌شده و قابل ویرایش کنترل را اضافه می‌کند.


CommandButtonControl

CommandButtonControl مستقیماً Forms2OleControl را گسترش می‌دهد (نه MorphDataControl) و سازندهٔ مخصوص به خود را دارد. این یک دکمه است که هنگام کلیک در Word ماکرویی را اجرا می‌کند، و برچسب دکمه آن از طریق ویژگی ارث‌بردهٔ Caption در دسترس است.


MorphDataControl: پایهٔ مشترک برای کنترل‌های ورود داده

MorphDataControl یک پایهٔ تجمیعی برای شش نوع کنترل مرتبط است — checkbox، combo box، list box، option button، text box و toggle button. CheckBoxControl، OptionButtonControl و TextBoxControl هر کدام آن را گسترش می‌دهند، اعضای آن را به ارث می‌برند و یک ویژگی خاص نوعی خود را اضافه می‌کنند.


نکات و بهترین شیوه‌ها

  • مقدار Forms2OleControl.Type (یک مقدار Forms2OleControlType) را بخوانید تا یک کنترل را قبل از تبدیل به یکی از زیرکلاس‌های خاص شناسایی کنید — نه هر Forms2OleControl یکی از پنج زیرکلاس با نوع‌قوی است که در اینجا پوشش داده شده‌اند.
  • از GroupName برای ترکیب چند نمونهٔ OptionButtonControl در یک مجموعهٔ متقابلاً انحصاری استفاده کنید، به‌طور مشابه با نحوهٔ گروه‌بندی دکمه‌های گزینه‌ای در Word.
  • به کنترل‌های تو در تو داخل یک فریم یا محفظهٔ چندصفحه‌ای از طریق ChildNodes (یک Forms2OleControlCollection) ارث‌برده دسترسی پیدا کنید، صرف‌نظر از این‌که محفظه از کدام زیرکلاس باشد.

مشکلات رایج

مشکلدلیلاصلاح
تبدیل Forms2OleControl به CheckBoxControl باعث پرتاب InvalidCastException می‌شوداین کنترل یک نوع متفاوت از کنترل‌های Forms 2.0 است (به عنوان مثال یک TextBoxControl یا OptionButtonControl)قبل از تبدیل به یک زیرکلاس خاص، Forms2OleControl.Type را بررسی کنید
OptionButtonControl.Selected به‌عنوان متقابلاً انحصاری با کنترل‌های هم‌سطح عمل نمی‌کندکنترل‌ها GroupName یکسانی را به‌اشتراک نمی‌گذارندمقدار GroupName یکسان را برای هر OptionButtonControl در مجموعه تنظیم کنید
CommandButtonControl.Caption خالی استعنوان دکمه از Forms2OleControl.Caption ارث‌برده می‌شود، نه از ویژگی مخصوص CommandButtonControlمقدار Caption را بخوانید، نه عضو غیرموجود CommandButtonControl-only

FAQ

چگونه می‌توانم بفهمم کلاس کنترل به‌صورت قوی‌تایپ شده‌ی Forms2OleControl در واقع چیست؟

ویژگی Type آن را بخوانید (Forms2OleControlType) یا سعی کنید به زیرکلاس خاصی که انتظار دارید تبدیل کنید، مانند CheckBoxControl یا TextBoxControl.

تفاوت بین MorphDataControl و Forms2OleControl چیست؟

Forms2OleControl پایهٔ انتزاعی برای تمام کنترل‌های Forms 2.0 است. MorphDataControl پایهٔ انتزاعی خاص‌تری است که خود از Forms2OleControl ارث می‌برد و توسط انواع کنترل‌های چک‌باکس، کمبو‌باکس، لیست‌باکس، گزینه‌دکمه، تکست‌باکس و دکمهٔ تغییر وضعیت به‌اشتراک گذاشته می‌شود.

چگونه می‌توانم وضعیت انتخاب شدهٔ یک کنترل چک‌باکس را بخوانم؟

Forms2OleControl را به CheckBoxControl تبدیل کنید و ویژگی Checked آن را بخوانید.

آیا CommandButtonControl همانند سایرین از MorphDataControl ارث می‌برد؟

خیر – CommandButtonControl مستقیماً Forms2OleControl را گسترش می‌دهد، زیرا یک دکمه فرمان یک کنترل ورود داده نیست.


API Reference خلاصه

کلاستوضیح
MorphDataControlپایهٔ انتزاعی برای کنترل‌های checkbox، combo box، list box، option button، text box و toggle button
CheckBoxControlکنترل Checkbox؛ MorphDataControl را گسترش می‌دهد؛ Checked را اضافه می‌کند
OptionButtonControlکنترل دکمه گزینه؛ از MorphDataControl گسترش می‌یابد؛ Selected را اضافه می‌کند
TextBoxControlکنترل جعبه متن؛ از MorphDataControl گسترش می‌یابد؛ Text را اضافه می‌کند
CommandButtonControlکنترل دکمه فرمان؛ مستقیماً از Forms2OleControl گسترش می‌یابد

همچنین ببینید:

 فارسی