Windows 7 の .Net2010 で Windows アプリケーションを開発しました。Windows フォームとコントロールは Windows 7 でパーフェクトに見えますが、WindowsXP では Textbox に含まれるテキストは、次の図に示すように、Label と Textbox の間の最初の文字のオーバーラップを非表示にします。
2 に答える
TableLayoutPanel
コントロールを適切な方法で配置する
ために使用できます。詳細については、こちらを参照してください。
これにより、これらのコントロールのプロパティを使用Docking
しAnchoring
て、スペースの変化に合わせてコントロールを拡大または縮小できます。
TextBox および ComboBox コントロールのそれぞれにキャプションを提供するために使用している Label コントロールは、TextBox および ComboBox コントロールの上に拡張されています。それらの背景色はフォームと同じです (茶色がかった灰色)。
考えられる解決策の 1 つは、コントロールの Z オーダーを変更して、Label コントロールが常に背景にあるようにすることです。コントロールは引き続きオーバーラップしますが、TextBox コントロールと ComboBox コントロールは、逆ではなく、Label コントロールとオーバーラップします。
Label コントロールにテキストが隠れていない限り、これは問題なく機能します。それはかなりありそうもないです、そしてあなたは確かにそれを当てにしています. 代わりに、フォームを再設計して、コントロール間に十分なスペースを確保する必要があります。そうしないと、拡張の余地がなくなり、オーバーラップするしかなくなります。
コントロールを動かして、呼吸の余地を与えます。これには、適切な名前のPadding
プロパティが非常に役立ちます。