8
プログラムで行を追加するWinformsTableLayoutPanel
私はしばらくこれと戦ってきましたが、他の多くの人々もTableLayoutPanel(.net 2.0 Winforms)で苦労していることがわかりました。 問題 10列が定義されている「空白」のtablelayoutpanelを取得し、実行時にプログラムでコントロールの行を追加しようとしています(つまり、セルごとに1つのコントロール)。 と同じくらい簡単なはずだと思ったかもしれません myTableLayoutPanel.Controls.Add(myControl, 0 /* Column Index */, 0 /* Row index */); しかし、それは(私にとっては)行を追加しません。だから多分行スタイルで追加する myTableLayoutPanel.RowStyles.Clear(); myTableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.Absolute, 30F)); しかし、それも機能しません。調べてみると、myTableLayoutPanel.RowCount使用法は設計時から実行時に変化するためmyTableLayoutPanel.RowCount++;、RowStyleエントリを追加する前でも後でも、実際には別の行が追加されません。 私が遭遇している別の関連する問題は、コントロールがディスプレイに追加されることですが、それらはすべてTableLayoutPanelのポイント0,0でレンダリングされるだけであり、さらに、本来あるべきセル境界内にあるように制約されることさえありません。内に表示されます(つまり、Dock = DockStyle.Fillを使用すると、まだ大きすぎたり小さすぎたりします)。 実行時に行とコントロールを追加する実用的な例はありますか?