我正在创建一个类似Facebook Wall的结构,并使用C#-Visual Studio 2010和Sql Server 2005作为数据库,使用转发器控制。
我无法在转发器控件中显示多行文字
脚本
<asp:TextBox ID="TextBox1" runat="server" Width="100%" TextMode="MultiLine"></asp:TextBox>
<asp:Repeater ID="myrepeater" runat="server">
<HeaderTemplate>
<table width="100%" style="font: 8pt verdana">
<tr style="background-color:#3C78C3">
<th>SCRAPS</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%#DataBinder.Eval(Container,"DataItem.scraps") %>
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
因此,当我点击提交按钮时,文本存储在DataItem.scraps
(我的数据库表中的列)中,并显示在转发器控件中。
但是当我在文本框中输入多行文本时,它在转发器控件中显示为单行。
我希望它能够显示多行转发器控件。
那究竟是什么问题 1)是否在数据库中存储单行文本 2)或,转发器控制问题
并且,如何解决它?
请帮帮我。
提前致谢, NIKHIL
答案 0 :(得分:4)
转发器控制非常简单。没有理由你无法彻底控制输出,只需将所有内容放在项目模板中:
<asp:Repeater ID="rptWall" runat="server">
<HeaderTemplate>
<h1>The wall<h1>
</HeaderTemplate>
<ItemTemplate>
<hr>
<asp:TextBox id="txtPost" runat="server" textmode="multiline" text='<%#DataBinder.Eval(Container.DataItem, "Posttext")%>'></asp:TextBox>
<hr>
</ItemTemplate>
<FooterTemplate>
<h3>put stuff here to add post</h3>
</FooterTemplate>
</asp:Repeater>