带有“新行”的文本框

时间:2010-10-15 16:59:30

标签: asp.net .net-4.0 textbox richtextbox

我们尝试了几种方法来使文本框接受“输入”,换行符等。但我们仍然面临同样的问题。大多数“第三方”控件允许用户根据需要格式化文本。例如,添加颜色,字体,表格等。但是,对于大多数时尚网站,我们不希望允许用户以这种方式格式化文本。

但是我们仍然希望它们“进入”,所以我们禁用大多数功能(颜色,粗体,表格,插入图像等)。但我们还有另一个问题,复制和粘贴。在文本框和wham中看到人们从MS Word复制的情况并不少见,网站的所有风格都很糟糕!

这就是为什么我打开制作我自己的文本框,多行(ASP。网)的可能性,然后让权利按“Enter”(< br />)。

最佳方法是什么?

我有什么提示需要注意吗?

谢谢!

2 个答案:

答案 0 :(得分:13)

将模式设置为TextBoxMode.MultiLine

在代码隐藏中,

myTextBox.TextMode = TextBoxMode.MultiLine

或在标记​​中

<asp:TextBox TextMode="MultiLine"

当用户在TextBox中输入文本时,它会以新行\r\n返回给您。如果您想将其正确显示给用户,可以使用

myTextBox.Text.Replace(Environment.NewLine, "<br />")

答案 1 :(得分:1)

要避免此问题并在TextBox控件中允许HTML标记,您需要将Page指令的ValidateRequest更改为false。你可以像下面的代码那样做:

使用ValidateRequest =“false”

相关问题