1

Visual Studio 2008 には、System.Windows.Forms.TabPage のインスタンスがあります。

TabPage には多くのコントロールがあります。

したがって、TabPage には垂直スクロール バーがあります。

多くの場合、すべてのコントロールが均一に下に移動し、TabPage の上部に多くの空きスペースができます。TabPage の上部にある最初のコントロールを表示するには、下にスクロールする必要があります。これは、Visual Studio 内で発生し、続いて実行時にも発生します。

このシフトを引き起こすイベントはないようです。それはただ起こります。各コントロールの Location プロパティを表示すると、それらがすべて同じ値だけ下にシフトしたことがわかります。

これを手動で数回修正する必要がありました。その後、通常は数日後に問題が再発します。フォームで作業できます。よさそうです。閉じます。後で戻ってくると、すべてのコントロールが固定量だけ下に移動します。

7月14日 詳細はこちら

Visual Studio 2008 ではこれが変更されています。

this.groupBoxTrees.Location = 新しい System.Drawing.Point(3, 3);

これに:

this.groupBoxTrees.Location = 新しい System.Drawing.Point(3, 1030);

なんで?いつ?いかなる理由で?知らない。

値 1030 もランダムであることに注意してください。私が言えることは、何らかの理由で VS が TabPage のすべてのコントロールの各 Location.Y プロパティに定数値を追加するということだけです。すべてのコントロールがロックされています。

助言がありますか?

ありがとう!

4

1 に答える 1

2

同僚のおかげで、何が問題なのかがわかりました。

TabPage のスクロール バーが下に移動されたときにフォームが保存されると、Visual Studio Studio は、TabPage のすべてのコントロールの Location.Y に番号を追加します。その値は、スクロール バーが下に移動した距離に相関しています。

フォームによる変更を保存する前に、常にスクロール バーをフォームの一番上に移動することで、この問題を回避できます。

なぜこれが起こるのですか?私が知る方法はありません。2 台のモニターを使用していることが関係している可能性があります。しかし、それが問題の原因となる場合は、Location.Y ではなく Location.X が変更されると考えるでしょう。

于 2012-07-15T19:53:01.357 に答える