多行文本框 - 在回发时添加的空格

Ale*_*unn 5 c# asp.net mono

我有一个Textbox添加到.ascx控制页面如下:

<asp:TextBox id="txtDescription" runat="server" Width="500" TextMode="MultiLine" Rows="2"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

并且它会在首次加载时显示类似的内容(包括开头的4个空格):

    Description goes here
Run Code Online (Sandbox Code Playgroud)

简而言之,这是一个Multiline Textbox2行.但是,无论何时我们Postback对服务器执行操作,当页面重新加载时,我们都会得到:

        Description goes here
Run Code Online (Sandbox Code Playgroud)

另一个Postback.

            Description goes here
Run Code Online (Sandbox Code Playgroud)

等等.基本上,每次在a之后刷新页面时Postback,它会在文本框的开头添加4个空格.在某些页面上,这不是问题,但是,如果用户将Gridview一些数据输入到一个或其他一些数据中Control,那么Textbox最终可能会将20个左右的字符分流到右边,有时会超出界限的Textbox.

简而言之,这对我们公司来说是一个问题,因为它发生在我们所有的网页上.我们的一位客户多次通过"......你能在某些时候对文本框开头的空间做些什么吗?"

现在,我们使用的临时修复是我们PageLoad函数中的以下代码,但是,我们仍然在开头留下了4个空格Textbox.并且在100个.ascx.aspx控件/页面中滚动它并不是真正的解决方案.

if (IsPostBack)
     txtDescription.Text = txtDescription.Text;
Run Code Online (Sandbox Code Playgroud)

现在最大的问题是,有没有人知道如何删除这些神秘的4个空间,这些空间一直被添加到一个开头Multiline Textbox

Sam*_*Axe 5

典型的 html textarea(多行文本框)如下所示:

<textarea>This is some content</textarea>
Run Code Online (Sandbox Code Playgroud)

现在,如果您的输出如下所示:

<textarea>
    This is some content
</textarea>
Run Code Online (Sandbox Code Playgroud)

然后你会介绍你的空间问题。当您保存此内容时,您会在开头获得 4 个空格(缩进)。现在你重新加载这 4 个空格,突然间你有 8 个空格:4 个来自标记,4 个来自保存的内容。每次保存内容时,此模式都会继续。

我不熟悉您(ASP Web 窗体)如何生成您的内容,但这应该给您一个调查点。