0

Visual Studio 2008でスマートデバイスプロジェクトを使用しているときに、フォームにコントロールを追加するためにWindowフォームデザイナを使用すると、プログラムが実際に実行されているときにコントロールが正しい場所に表示され、デバイスにQVGAまたはVGA画面。しかし、デザイナーを使わずに手動でコードにフォームにコントロールを追加すると、デバイスがVGAスクリーンであるかQVGAスクリーンであるかにかかわらず、実行時に自分のコードチェックが必要になります。 VGA画面の場合、x、y、幅、高さをそれぞれ2つずつ手動で追加する必要があります。デザイナーを使わずにコントロールを追加するだけで必要なのはなぜですか?QVGAとVGAの両方のVisual Studio 2008 Windowsフォームデザイナはどのように互換性がありますか?

最初の回答の下にコメントを追加しました。

答えて

1

デザイン時に追加されたコントロール最初に描かれたときによりdesigner.csでこれらのプロパティには、自動縮尺されています

this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); 
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; 

あなたは、実行時に動的にコントロールを追加すると、あなた自身のスケーリングを実行する必要があります。それは理想的ではありませんが、それはちょうどそれが動作する方法です。

+0

まだ分かりません。デザイナによって追加されたコントロールは、実行時に動的に追加され、生成されたコードです。これは、ここに投稿したコードがまだ存在するため、デザイナで追加されたコントロールとコントロールの両方を手動で追加すると、特に混乱します。 –

関連する問題