3

親コントロールと比較して、子コントロールを右下の位置にドッキングするにはどうすればよいですか?

ドックスタイルの列挙型には、None、Top、Bottom、Right、Left、Fillの値があることがわかります...

右下に設定するにはどうすればよいですか?

4

5 に答える 5

7

おそらく、右下にドッキングしたくないでしょう。ドッキングすると、コントロールの位置が変更されますが、フォームの高さまたは幅に合わせてサイズも変更されます。

上下左右に固定したい場合は、固定します。左右のアンカーを外し、左右のアンカーを追加します。あなたのコントロールはそこにとどまります!

**編集**OPのコメントによると、それは下部にあり、すべての幅を取り、高さが固定されている必要があります。次に、次の手順を実行する必要があります。

整理整頓するには、少なくとも2つのコントロールが必要です。

  • 一番下にあるもの:一番下にドッキングして高さを設定します。
  • フィルのドッキングスタイルを使用する他のもの。これにより、下部のコントロールが占めていないすべてのスペースが必要になります。

設定に問題がある場合は、レイアウトウィンドウ(英語での名前だといいのですが。私のVSはローカライズされています)を使用して、機能するまで移動します。ドッキングが少し厄介な場合があります。これを好きなように機能させる唯一の方法は、このレイアウトウィンドウを使用してコントロールの順序とネストを変更することです。

于 2012-05-24T14:56:29.007 に答える
3

AnchorStylesを使用します。

yourComponent.Anchor = ((System.Windows.Forms.AnchorStyles)
                       ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
于 2012-05-24T14:56:39.163 に答える
0

DockをBottomに設定してみてください。コントロールによっては、自動サイズ設定をオフにする必要がある場合があります。たとえば、ラベルなどです。

于 2012-05-24T15:24:26.330 に答える
0

次のMSDNドキュメントからControl.Dock

コントロールは、親コンテナの1つのエッジにドッキングすることも、すべてのエッジにドッキングして親コンテナを埋めることもできます。

したがって、2つのエッジにドッキングすることはできません。これが何を意味するのかは実際にはわかりません。

画面の右下にコントロールを保持したい場合は、Anchor プロパティを考えているかもしれません。これにより、コントロールを固定するための複数のエッジを設定できます。

于 2012-05-24T14:59:38.210 に答える
0

右下に「ドッキング」するには、次のことを行う必要があります

  1. 親の右側にControlAをドッキングします。ControlB
  2. ControlAのトップパディングをに設定しますControlA.Padding = new Padding(0, ControlB.Height - nTopPadding, 0, 0);

nTopPadding必要なものなら何でもかまいません。TextBoxes、Labelsなどの場合ControlA.Font.Heightに最適です。

これは、の場合にも機能しAutoSize = trueます。必要に応じてパディングを更新するだけで済みます。

于 2018-12-26T22:11:51.960 に答える