5

コントロールをツールボックスから Visual Studio 2008 WPF デザイン サーフェイスにドラッグすると、ドロップした場所と既定のサイズに基づいて余白が設定されます。

VSがそれらを設定するのを防ぐ方法はありますか? コントロールをスタックパネルにドロップすると、パネル内の既存のコントロールに流れ込みます。

ありがとう!

4

3 に答える 3

5

これを防ぐ方法を見つけたことはありません。代わりに XAML を入力するだけです。

編集

上記の文章を書いたのは約 3 年前です。それまでの間、デザイン時のエクスペリエンスは大幅に改善されたようです。

ドラッグ アンド ドロップの場合、デザイナーは依然としてハードコードされたマージンを追加しますが、手動で行うことなくそれらのマージンを削除する方法があります。

Visual Studio 2010 のデザイン ツールを使用して、XAML を入力せずにフォームをレイアウトする方法を説明する記事へのリンクを次に示します。(タイトルはともかく、WPFの話です。)

記事の最初の部分では、ハードコーディングされたピクセルを示していますが、そのハードコーディングなしでコントロールをレイアウトする方法を示している 2 番目の部分にリンクしています。

Windows フォーム開発者向けのレイアウト テクニック

于 2009-01-30T21:43:52.290 に答える
0

コントロールをスタックパネルにドロップすると、マージンが追加されず、残りの部分と一緒に「流れ込み」ます。

デザイン サーフェイスにドロップするコントロールには、既定でマージンがあります。私が通常行うことは、グリッドを作成し、必要な場所にマージンを設定してから、コントロールを配置する列と行を作成することです。通常は必要ないマージンを追加する他のコントロールをドロップします。すべてのコントロールをグリッドに適切に配置した後、XAML ビューに切り替えて、余白を完全に削除するか (ボタンのようなコントロールがスペース全体を埋めます)、余白を 5 のようにします。コントロールの周りの素敵なパディング。

つまり、Silverlight 開発では特にそうです。XAML を直接操作することに慣れる必要があります。これは、レイアウトを希望どおりに正確に取得する唯一の方法です。これは私の意見であり、私のショップで WPF/silverlight 開発を行っているほとんどの人の意見です。

于 2009-01-31T17:25:10.847 に答える
0

残念ながら、これを行う手段はないようです。

デザイナがコントロールのサイズを操作した結果、既定のサイズが設定されます。コントロールの幅や高さを増やすと、デザイナーは、幅や高さを指定したコントロールを作成する要求としてアクションを解釈します。

マージンでも同様の状況が発生します。デザイナー内でコントロールの位置を変更すると、作成したレイアウトを実現するためにプロパティが変更されます。ほとんどのコンテナの場合、最も簡単な解決策は、目的の位置を達成するためにマージンを変更することです。単純な解決策が常に最も望ましいとは限らないことを既に指摘しました。

個人的には、XAML エディターのみを使用することを好み、現在のレイアウトを確認したいときに WPF デザイナーをときどき使用するだけです。また、グリッドを使用してほとんどのウィンドウ/コントロールをレイアウトすることを好む傾向があります。これは、サイズ変更と配置だけでなく、アニメーション、変換などの他のタスク/機能にも最大限の柔軟性を提供するためです.

于 2009-02-02T04:41:07.860 に答える