我在一个 .ascx
控件页面上添加了一个 Textbox
,代码如下:
<asp:TextBox id="txtDescription" runat="server" Width="500" TextMode="MultiLine" Rows="2"></asp:TextBox>
当首次加载时,它会显示类似于以下内容(包括开始处的4个空格):
Description goes here
简单来说,它是一个有两行的“多行文本框”。但是,每当我们向服务器发出“Postback”请求时,页面重新加载后,我们会得到以下结果:
Description goes here
另一个后台请求。
Description goes here
基本上,每次页面经过Postback刷新后,它都会在文本框的开头添加4个空格。在某些页面上,这不是问题,但是如果用户向GridView或其他控件输入大量数据,则Textbox的内容可能会向右移动20个或更多字符,有时超出Textbox的范围。
简单地说,对我们公司来说,这是一个问题,因为它在我们所有的页面上都发生了。我们的一位客户曾多次提出“...你能不能解决一下文本框开头的空格问题?”。
现在,我们采用的临时解决方法是在我们的PageLoad函数中使用以下代码,但是我们仍然在Textbox的开头留下了4个空格。而且将其部署到数百个.ascx和.aspx控件/页面并不是一个解决方案。
if (IsPostBack)
txtDescription.Text = txtDescription.Text;
现在的大问题是,有没有人知道如何移除这些神秘的4个空格,它们不断地被添加到一个多行文本框
的开头?