C# 与WindowsXP中重叠的.Net控件相关的问题

C# 与WindowsXP中重叠的.Net控件相关的问题,c#,.net,vb.net,C#,.net,Vb.net,我在windows 7中的.Net2010中开发了一个windows应用程序,windows窗体和控件在windows 7中看起来很有效,但在windows XP中,文本框中包含的文本隐藏了标签和文本框之间的第一个字符重叠,如下图所示: 用于为每个TextBox和ComboBox控件提供标题的标签控件扩展到TextBox和ComboBox控件的顶部。它们的背景色与表单相同(棕灰色) 一种可能的解决方案是更改控件的Z顺序,以便标签控件始终位于背景中。控件仍将重叠,但TextBox和ComboBox

我在windows 7中的.Net2010中开发了一个windows应用程序,windows窗体和控件在windows 7中看起来很有效,但在windows XP中,文本框中包含的文本隐藏了标签和文本框之间的第一个字符重叠,如下图所示:


用于为每个TextBox和ComboBox控件提供标题的标签控件扩展到TextBox和ComboBox控件的顶部。它们的背景色与表单相同(棕灰色)

一种可能的解决方案是更改控件的Z顺序,以便标签控件始终位于背景中。控件仍将重叠,但TextBox和ComboBox控件将与Label控件重叠,而不是相反

只要标签控件上没有被掩盖的文本,这就行了。这是不太可能的,你肯定会相信的。相反,您需要重新设计表单,以便在控件之间有足够的额外空间。你不能把东西挤得太近,否则就没有任何扩展的空间,它们将别无选择,只能重叠


移动控制装置,给它们一些喘息的空间。适当命名的
Padding
属性非常有用。

您可以使用
TableLayoutPanel
以良好的方式放置控件

有了它,您可以使用这些控件的
停靠
锚定
属性,随着空间的变化而增大或缩小它们