2012-02-08 62 views
1

我想顯示我的GridView中的記錄和一些單元格包含帶回車符的文本。但是,當顯示此文本時,回車消失了。有沒有簡單的方法來顯示GridView單元格中的回車?我怎樣才能在GridView中顯示帶回車的文本在ASP.Net

我試過使用工作單元格內的文本框,但我然後有文本框的scollbars。我不太喜歡這種方式,因爲文本框可能在不同的瀏覽器中呈現不同的效果。

我的代碼顯示如下,我已經離開我的測試在那裏,所以你可以看到我已經嘗試了所有的辦法:

<asp:GridView ID="gridResults" runat="server" AutoGenerateColumns="false" CellSpacing="-1" 
      CssClass ="stretch separate" GridLines="None" EnableViewState="true"> 
      <HeaderStyle CssClass="header pad" /> 
      <RowStyle CssClass="row pad"/>     
      <EmptyDataRowStyle CssClass="empty pad" /> 
      <Columns> 
       <asp:BoundField DataField="Notes" HeaderText="Notes" HtmlEncode="true"> 
        <ItemStyle Width="100" /> 
       </asp:BoundField> 
       <asp:TemplateField HeaderText="Notes" > 
        <ItemTemplate> 
         <asp:Label ID="test" runat="server" Text='<%# Bind("Notes") %>' /> 
         <asp:TextBox ID="textNotes" runat="server" CssClass="right" TextMode="MultiLine" Text='<%# Bind("Notes") %>' BorderStyle="None" /> 
        </ItemTemplate>       
        <ItemStyle Width="50" CssClass="right" /> 
       </asp:TemplateField> 
      </Columns> 
     </asp:GridView> 

我使用ASP.Net 4.0和C#

謝謝

回答

4

嘗試將<asp:Label>Text屬性設置爲Text='<%# Eval("Notes").ToString().Replace("\n", "<br />") %>'

+0

謝謝你的作品。這不會減緩頁面加載速度嗎? – user1131661 2012-02-08 11:46:17

+0

鑑於您正在向頁面處理添加開銷,是的(從技術上講)。這種減速是否顯着取決於您在GridView中返回的記錄數量以及'Notes'字段中需要的替換次數。 – pete 2012-02-08 11:58:19