私のアプリケーションでは、多くのコントロール(ラベル、テキストボックス、domainupdown)を適切な順序で配置する必要がありました。だから私は先に進んで、いくつかのネストされたを使用しましたTableLayoutPanel
。現在の問題は、このフォームがほとんどのイベント(サイズ変更、最大化、最小化など)に非常に遅く応答することです。テーブル内のコントロールがサイズ変更され、新しいサイズのフォームに再描画されるまで、実際には最大5秒かかります。
今、目に指を入れています!このフォームが私の自宅のPC(i7 @ 4GHzと優れたグラフィックカード)でそれほど遅い場合、仕事中の古いP4コンピューターで明日何をしますか?
私は以下のコードを使おうとさえしましたが、それがそれ以上遅くならないのであれば、それは絶対に何もしません!
private void FilterForm_ResizeBegin(object sender, EventArgs e)
{
foreach(TableLayoutPanel tlp in panelFilters.Controls)
{
if(tlp != null)
{
tlp.SuspendLayout();
}
}
}
private void FilterForm_ResizeEnd(object sender, EventArgs e)
{
foreach (TableLayoutPanel tlp in panelFilters.Controls)
{
if (tlp != null)
{
tlp.ResumeLayout();
}
}
}
tablelayoutpanelをより高速に動作させるための秘訣があるかどうか、または約100個のコントロールを適切に配置するためのより良いアプローチを知っているかどうかを教えてください。