11

Visual StudioのWinFormsプロジェクトのコントロール間に配置されるスペーススナップラインの量を変更することはできますか?

たとえば、テキストボックスを別のテキストボックス(上下に)にスライドすると、コントロール間に6ピクセルのスペースができます。それらが互いにスナップするとき、それらの間に5ピクセルのスペースが必要です。

ありがとう。


編集:

すべての回答をありがとう。アプローチを要約すると役立つかもしれないと思いました。

オプション1

[ツール]>[オプション]>[Windowsフォームデザイナ]>[一般]でレイアウトモードをSnapLines(デフォルト)に設定し、受け入れられた回答のIgbyLargemanのガイダンスに従います

オプション2

レイアウトモードをSnapToGridに設定し、デフォルトのグリッドセルサイズで間隔を選択します。この回答をくれたJoeCaffeineとMarcStoberに感謝します。

補足的アプローチ1

コントロールをドラッグするときは、Altキーを押したままにして、 Vigness.Nが提案したようにスナップを完全に使用しないようにします。

補足的アプローチ2

矢印キーを使用して、コントロールをピクセル単位で移動します。

補足的アプローチ3

Johannes Frankは、最初のスナップラインを支援するためにプレースホルダーコントロールを追加することも提案しています。

4

5 に答える 5

14

スナップラインは、間隔(青い線)と位置合わせ(ピンクの線)の両方に使用されることに注意してください。

はい、スナップラインが提案するスペースの量を制御できますが、これを行うには、コントロールのマージンパディングのプロパティを変更します。

1つのコントロールを別のコントロールにスライドすると、スナップラインの長さは2つのコントロールのマージンの合計になります。

コントロールを包含コントロールの境界に向かってスライドさせる場合、スナップラインの長さは、コントロールのマージン包含コントロールのパディングの合計になります。

これについては、ここで説明します。

編集:フォームが親コンテナであり、フォームのパディングが0,0,0,0である特別な場合があります。


フォームのPaddingプロパティが0,0,0,0に設定されている場合、Windowsフォームデザイナはフォームに9,9,9,9のシャドウされたパディング値を与えます。この動作をオーバーライドするには、0,0,0,0以外の値を割り当てます。

于 2013-03-26T23:59:31.203 に答える
7

コントロール間の間隔を設定するのに役立つスナップラインはありません。スナップラインは、コントロールの端とテキストの位置合わせに役立ちます。代わりに、設計者はコントロールのマージンプロパティに注意を払います。ボタンのデフォルトは(3、3、3、3)で、所定の位置にスナップして、隣接するコントロールから3ピクセルのギャップを作成します。

自分で試してみることをお勧めします。ラベルとボタンをドロップし、ボタンのマージンを(3、10、3、3)に変更して、ラベルの下のボタンを上下に移動します。これで、所定の位置にスナップして10ピクセルのギャップが作成されます。

于 2013-03-22T21:46:58.227 に答える
1

[ツール]->[オプション]->[Windowsフォームデザイナ]の下にグリッド間隔を制御する設定があります。

于 2009-09-04T00:25:30.493 に答える
1

コントロールをドラッグするときにキーを押したままAltにし、コントロールが目的のポイントに配置された後にキーを離すと、デフォルトでどこにもスナップしなくなります。

于 2013-03-27T11:10:38.353 に答える
0

明らかに、オプション設定はありません。ただし、次の2つの方法で目標を達成できます。最初:矢印キーを使用して、ドロップ後にコントロールを移動します。2番目:コンテナの左上または下側にヘルパーボタンを配置できます。Snaplineはこれらを参照として使用し、4ピクセル間隔の場合、新しいコントロールも4ピクセルのアパートになります。矢印キーでコントロールを押して、次に提案されるスナップライン位置に移動することもできます。これにより、1ピクセルまでの間隔が可能になります。最後に、ヘルパーボタンを削除します。

それが役に立てば幸い。

于 2013-03-20T19:34:57.717 に答える