レガシー ActiveX (Forms 2.0) コントロール タイプ

レガシー ActiveX (Forms 2.0) コントロール タイプ

レガシー ActiveX (Forms 2.0) コントロールタイプ

OLE オブジェクトと埋め込みコンテンツの操作 埋め込み Microsoft Forms 2.0 ActiveX コントロールにアクセスする方法をカバーします OleFormat.OleControl そして抽象的な Forms2OleControl 基底クラスへ。 Aspose.Words の .NET 用 FOSS また、Word がサポートする特定のコントロール種別に対して、5 つの強く型付けされたサブクラスを公開します – CheckBoxControl, OptionButtonControl, TextBoxControl, CommandButtonControl、および MorphDataControl – 各々は Aspose.Words.Drawing.Ole 名前空間、プロパティに加えて制御固有のメンバーを1つ追加する 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 は、チェックボックス、コンボボックス、リストボックス、オプションボタン、テキストボックス、トグルボタンの 6 つの関連コントロール種別の集約ベースです。CheckBoxControl、OptionButtonControl、TextBoxControl はそれぞれこれを継承し、メンバーを引き継ぎつつ独自の型固有プロパティを 1 つ追加します。


ヒントとベストプラクティス

  • 特定のサブクラスのいずれかにキャストする前に、Forms2OleControl.Type(Forms2OleControlType の値)を読み取ってコントロールを識別してください――ここで取り上げている 5 つの強く型付けされたサブクラスのすべてが Forms2OleControl であるわけではありません。
  • GroupName を使用して、複数の OptionButtonControl インスタンスを相互排他的なセットに関連付け、Word がオプションボタンをグループ化する方法と一致させます。
  • フレームやマルチページコンテナ内のネストされたコントロールには、コンテナがどのサブクラスであっても、継承された ChildNodes(Forms2OleControlCollection)を介してアクセスできます。

一般的な問題

問題原因修正
Forms2OleControl を CheckBoxControl にキャストすると、InvalidCastException がスローされますコントロールは別の Forms 2.0 コントロール種別です(例: TextBoxControl または OptionButtonControl)。特定のサブクラスにキャストする前に Forms2OleControl.Type を確認してください
OptionButtonControl.Selected は兄弟コントロールと相互排他的に動作しませんコントロールは同じ GroupName を共有していませんセット内のすべての OptionButtonControl に同じ GroupName 値を設定してください
CommandButtonControl.Caption が空ですボタンのキャプションは継承された Forms2OleControl.Caption から取得され、CommandButtonControl 固有のプロパティからではありません存在しない CommandButtonControl のみのメンバーではなく、Caption を読み取ります

FAQ

Forms2OleControl が実際にどの強く型付けされたコントロールクラスであるかをどうやって知りますか?

その Type プロパティ(Forms2OleControlType)を読み取るか、期待する特定のサブクラス(例: CheckBoxControl または TextBoxControl)へのキャストを試みてください。

MorphDataControl と Forms2OleControl の違いは何ですか?

Forms2OleControl はすべての Forms 2.0 コントロールの抽象基底です。MorphDataControl はより具体的な抽象基底で、Forms2OleControl を継承しており、チェックボックス、コンボボックス、リストボックス、オプションボタン、テキストボックス、トグルボタンのコントロール種別で共有されています。

チェックボックスコントロールのチェック状態をどのように読み取りますか?

Forms2OleControl を CheckBoxControl にキャストし、その Checked プロパティを読み取ります。

CommandButtonControl は他と同様に MorphDataControl を拡張していますか?

いいえ – CommandButtonControl は Forms2OleControl を直接拡張しません。コマンド ボタンはデータ入力コントロールではないためです。


API Reference の概要

クラス説明
MorphDataControlチェックボックス、コンボボックス、リストボックス、オプションボタン、テキストボックス、トグルボタンコントロールの抽象基底クラス
CheckBoxControlチェックボックス コントロール; MorphDataControl を拡張; Checked を追加
OptionButtonControlオプション ボタン コントロール; MorphDataControl を拡張; Selected を追加
TextBoxControlテキスト ボックス コントロール; MorphDataControl を拡張; Text を追加
CommandButtonControlコマンド ボタン コントロール; Forms2OleControl を直接拡張

参照

 日本語