1

個人フォーム (住所、電話番号など) を持つプロトタイプの企業アプリケーションを継承しました。

言及された人のフォームでは、1つのラベル+テキストフィールドがフォーム自体の子であり、視覚的に属するパネルの子ではありません。

コントロールの親をフォームから VS 2008 デザイナーの既存のパネルに変更するにはどうすればよいですか?

アップデート:

ああ、念願の牛オーカーが残した超魔法特注グループボックスコントロールに問題があるようだ。通常のグループ ボックスにドラッグすると機能します ...

更新 2:

ドキュメント アウトラインの助けを借りて、アプリケーションにあるカスタム "GroupBoxExt" に欠陥があり、コントロールをパネルにドラッグすると (またはパネル上のコントロールの位置を変更するだけで)、それがフォームに割り当てられることがわかります。

更新 3:

何が間違っていたのかがわかったので (ドキュメントのアウトラインのヒントに感謝します)、Google にアクセスして、 CodeGuruでカスタム グループ ボックスを見つけました。その記事の著者は、カスタム パネルを次のように装飾する必要があることを発見しました。

[Designer("System.Windows.Forms.Design.ParentControlDesigner, System.Design", typeof(IDesigner))]

素敵なコンテナとして振る舞うようにします。

4

2 に答える 2

2

デザイナでこれを実行する場合、探しているのは[ドキュメントのアウトライン]パネルです([その他のウィンドウ]の[表示]メニューの下にあります)。そこから、アウトライン内の名前でコントロールをドラッグし、親を再割り当てできます。

お役に立てれば!

于 2009-03-30T00:37:38.447 に答える
0

あなたが何を求めているのか正確にはわかりません。シナリオを少し明確にしてもらえますか?

ただし、コントロールの親を変更したい場合は、Controls プロパティを使用してそのコントロールをパネルの子にするだけです。

myPanel.Controls.Add(target)

これにより、ターゲットの親が myPanel になるように更新されます。

デザイナーを介してこれを実行しようとしている場合は、ターゲット コントロールをパネルにドラッグするだけで処理されます。

于 2009-03-30T00:34:00.687 に答える