自作のユーザーコントロールをフォームに貼り付け、
それをクラスに渡してクラス内でそのコントロールのVisibleを制御しようとしておりますが、
フォームからコントロールのVisibleプロパティにアクセスできますが、
クラスからだと、
メソッドまたはデータメンバが見つかりません
とコンパイルエラーが出ます。
そこで、コントロールをControlやUserControlにキャストしてみましたが
型が一致しません
というエラーとなってしまいます。
コントロールにVisibleプロパティの追加を試みましたが、
ActiveXコントロールインタフェースウィザードの使用できる名前に於いて
それらのプロパティが列挙されません。
対象がユーザーコントロールでなく、ボタンなどの標準コントロールの場合は
できたのですが・・・
なにか方法をご存知でしたらご教授ください。
No.1ベストアンサー
- 回答日時:
Visibleプロパティを管理しているのがコンテナ側だからですよ
FormやPictureBoxはコンテナになりますのでフォームにはったUserControlの場合はVisibleプロパティが操作可能です
クラスに渡した UserControlですとこのコンテナが提供するExtenderプロパティを直接操作することが出来ないのではと思います
UserControlにVisibleを操作するプロパティを追加してみましょう
private bVisible as Boolean
Public Property Let MyVisible(value as Boolean)
bVisible = value
' Extenderを通してVisibleを操作
Extender.Visible = value
PropertyChanged "MyVisible"
End Property
Public Property Get MyVisible() as Boolean
MyVisible = bVisible
End Property
Private Sub UserControl_InitProperties()
' プロパティの初期化
bVisible = Extender.Visible
End Sub
Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
bVisible = PropBag.ReadProperty("MyVisible", Extender.Visible)
End Sub
Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
PropBag.WriteProperty "MyVisible", bVisible, Extender.Visible
End Sub
といった具合のコードを追加しておきます
クラス側では
obj.MyVisible = True
または
obj.MyVisible = False
といった具合で操作してみましょう
できました!!!
Extenderプロパティが要点なんですね。
どういうものかいまいちわかっていませんが。
とにかく、これを使ってActiveXコントロールインタフェースウィザードなんか気にせず無理やり実装しちゃえばよさそうですね。
実をいいますとVisible以外にもWidthとかHeightとか必要で結構面倒です(涙)。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- C言語・C++・C# ActiveXコントロールを.NETにインポートできない??? 2 2023/05/02 02:50
- Excel(エクセル) コントロールにリンクするセルが選択されない 3 2022/06/12 14:37
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- その他(コンピューター・テクノロジー) コントロール+Fキーについて 2 2022/10/03 16:59
- セキュリティホール・脆弱性 論理的アクセス・コントロールに関する問題で悩んでいます 1 2022/10/08 08:42
- Bluetooth・テザリング スマートウォッチについて質問です。 スマートウォッチには音楽コントロール(再生、停止など)ができる機 1 2022/03/27 18:27
- 医学 即時型アレルギーの完全なコントロール技術はいつ出来上がるのでしょうか? 以下、Wikipediaの花 1 2023/04/23 00:00
このQ&Aを見た人はこんなQ&Aも見ています
-
餃子を食べるとき、何をつけますか?
みんな大好き餃子。 ふと素朴な疑問ですが、餃子には何をつけて食べますか? 王道は醤油とお酢でしょうか。
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
忘れられない激○○料理
これまでに食べたもののなかで、もっとも「激○○」だった料理を教えて下さい。 激辛、でも激甘でも。 激ウマ、でも激マズでも。
-
2024年のうちにやっておきたいこと、ここで宣言しませんか?
2024年も残すところ50日を切りましたね。 ことしはどんな1年でしたか? 2024年のうちにやっておきたいこと、 よかったらここで宣言していってください!
-
お風呂の温度、何℃にしてますか?
みなさん、家のお風呂って何℃で入ってますか? ぬるめのお湯にゆったり…という方もいれば、熱いのが好き!という方もいるかと思います。 我が家は平均的(?)な42℃設定なのですが、みなさんのご家庭では何℃に設定していますか?
-
コンパイルエラー:ユーザ定義型は定義されていません、と出るのですがどのライブラリファイルかわかりません。
Visual Basic(VBA)
-
VBの「As String * 128」とは?
Visual Basic(VBA)
-
VB6のAttribute VB_Nameの意味について
Visual Basic(VBA)
-
-
4
VB6のプロジェクトロードエラーについて
Visual Basic(VBA)
-
5
regsvr32で登録された一覧を知りたい
UNIX・Linux
-
6
VB6.0のWritePropertyとReadPropertyについて
Visual Basic(VBA)
-
7
VB6で開発中…標準モジュール間での関数の呼び出し方は?
Visual Basic(VBA)
-
8
VBの画面サイズについて
Visual Basic(VBA)
-
9
.NETアプリを作ったときの .manifest ファイルって必要なの
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAでオプションボタン...
-
C#で角が丸いテキストボックス
-
カメラスクロールするのを動画...
-
ExcelVBAでListViewが使用できない
-
VBA ユーザーフォームの Keypre...
-
vb.netで画面のコントロールId...
-
Groupboxの配下のコントロール...
-
エクセル・VBA CheckBoxのオブ...
-
C# Form上に配置されたコントロ...
-
フォーム上の現在アクティブな...
-
変数をコントロール型で使用す...
-
チェックボックスをオンにした...
-
カレンダーコントロールの使用...
-
Excel VBA で Richtextboxを使...
-
With~EndWithの省略部分と引数...
-
コントロールを移動できない
-
excelのリストボックスで選択し...
-
なかなか、Zオーダーが理解で...
-
ACCESSフォームにコント...
-
コンボボックスの文字によるif...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
ExcelVBAでListViewが使用できない
-
エクセルVBAでオプションボタン...
-
vb.netで画面のコントロールId...
-
C#で角が丸いテキストボックス
-
VBA ユーザーフォームの Keypre...
-
ユーザーフォームで動的(Me.Con...
-
フォーム上の現在アクティブな...
-
Excel VBA で Richtextboxを使...
-
ACCESS2010のVBAでフォーム内ク...
-
Groupboxの配下のコントロール...
-
コントロールを移動できない
-
コンボボックスの文字によるif...
-
(VBA)スピンボタンの大量...
-
Labelコントロールの(左右)余...
-
イメージコントロールに 読み込...
-
間違えて配置してしまったコン...
-
OCXって何ですか?
-
EXCELでactivexコントロールを...
おすすめ情報