使用C#从asp.net中的代码加载文本到textarea

时间:2012-02-29 07:56:23

标签: c# asp.net html

我有一个asp.net页面,我想将文本加载到aspx页面中的textArea控件中,进入后面代码中的变量(C#):

代码背后:

System.Web.UI.HtmlControls.HtmlTextArea Output1 = 
    (System.Web.UI.HtmlControls.HtmlTextArea)(FindControl("textarea1"));       
Output1.Value = Output.ToString();

ASP:

<div style ="width: 78%; float: right; height: 85px; display: block;" 
    class="message_text_box_left">

    <textarea id="textarea1" name="textarea1" cols="30" rows="3" 
        class="message_text_box" title="Share your Idias here..." 
        tabindex="1" onkeyup="addrow_fun();"></textarea>                        
</div>  

但它给出了错误,如

  

对象引用未设置为对象的实例。

6 个答案:

答案 0 :(得分:3)

您应该添加

runat="server"

属性为文本区域。

或者,您最好使用TextBox ASP.NET control并将TextMode property设置为TextBoxMode.MultiLine。示例如下:

代码背后:

Output1.Text = Output.ToString();

ASP:

<div style ="width: 78%; float: right; height: 85px; display: block;" 
    class="message_text_box_left">

    <asp:TextBox ID="Output1" Rows="3" 
        CssClass="message_text_box" ToolTip="Share your ideas here..." 
        TextMode="MultiLine" />                        
</div>  

答案 1 :(得分:1)

runat="server"文件中添加*.aspx。使用Innertext属性设置文本值。 E.g。

htmlTexarea.InnerHtml = "sample"

答案 2 :(得分:0)

  1. runat="server"添加到您的控件
  2. 检查您的.designer.cs或codebehind .cs文件以获取textarea / textbox声明并修复它。
  3. 不要使用FindControl函数(它不是递归的),通过ID获取控制权。 textarea1.Value = xxx;

答案 3 :(得分:0)

尝试转换为HTML通用控件并设置其值或将其更改为使用asp文本框textmode = multiline

答案 4 :(得分:0)

如果添加runat =“server”属性,您应该可以直接使用textarea1.innerText。

答案 5 :(得分:0)

添加runat =“server”并使用代码隐藏

后的InnerText获取值
相关问题