FlowLayoutPanel と UserControl があります。
に複数のユーザーコントロールを追加しましたFlowLayoutPanel
。それらを上部にドッキングしようとしているため、サイズを変更すると、FlowLayoutPanel
それに応じてユーザーコントロールのサイズ (幅) が変更されます。
FlowLayoutPanel と UserControl があります。
に複数のユーザーコントロールを追加しましたFlowLayoutPanel
。それらを上部にドッキングしようとしているため、サイズを変更すると、FlowLayoutPanel
それに応じてユーザーコントロールのサイズ (幅) が変更されます。
FlowLayoutPanel 内には何もドッキングできません。単純に無視されます。
Microsoft チームによって明らかに投稿されたこちらの回答を確認してください。
彼らが言うには:
FlowLayoutPanel は、最大のコントロールに依存して、その中の列/行を効果的に定義します。以下のコードは、最初のコントロールのサイズを FLP の幅に設定して、目的と同様のレイアウトを実現します。
private void flowLayoutPanel1_Layout(object sender, LayoutEventArgs e)
{
flowLayoutPanel1.Controls[0].Dock = DockStyle.None;
for (int i = 1; i < flowLayoutPanel1.Controls.Count; i++)
{
flowLayoutPanel1.Controls[i].Dock = DockStyle.Top;
}
flowLayoutPanel1.Controls[0].Width = flowLayoutPanel1.DisplayRectangle.Width - flowLayoutPanel1.Controls[0].Margin.Horizontal;
}
重要なのは、Layout
イベントを使用することです。
このソリューションは、ある程度まではうまくいきました。UserControls をAutoSize
オフにするか、均一なサイズにする必要があります。
私の場合AutoSize
、FlowLayoutPanel の幅を埋めながら UserControl を垂直方向に拡大/縮小できるようにオンにしたかったのです。
別の解決策を見つけなければなりませんでした。しかし、上記はあなたの場合に役立つかもしれません。