2016-04-05 2 views
0

Winフォームの問題。.NET WinForms子コントロールが大きくなると親のサイズを変更する方法

Iは、以下の構造

Form 
-> User Control 
-> -> Panel 
-> -> -> GridViewControl 

グリッドビューコントロールは、新しい行を追加する場合、ユーザーコントロールがサイズ変更されませんを持っています。私は、増加するサイズのグリッドコントロールに対応するために、ユーザーコントロールのサイズを変更する(そして、パネルも同様)ようにしたいと思います。

これを行うためのプロパティを設定する方法はありますか?あるいは私はプログラム的な何かをする必要がありますか?

デリゲートを使用する方法を学び、子コントロールがサイズ変更されて適切に応答できるように親に通知する必要があるかもしれないと思っていますか?

答えて

0

特にスクロールバーを使用し、大きなフォームを避けることをお勧めしますが、GridViewまたはDataGridViewのControlAddedまたはSizeChangedイベントを使用するだけで済みます。あなたは実際に代議員やイベントについて学ぶ必要があります。

イベントの中で、itensの数を確認して、必要に応じてサイズを変更してください。

+0

私は 'SizeChanged'、' AutoSizeChanged'、 'ClientSizeChanged'を試しましたが、新しいデータがグリッドに追加されたときにはトリガされませんでした。私は 'RowsAdded'を使用しなければなりませんでした。任意のより良い提案? – drzaus