2011-07-26 2 views
0

Je suis en train de créer une structure semblable au mur de Facebook et un contrôle de répéteur utilisé pour cela en utilisant C# -Visual Studio 2010 et Sql Server 2005 comme base de données.Affichage multiligne dans le contrôle de répéteur?

Je suis incapable d'afficher le texte multiligne dans le contrôle du répéteur

Script

<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> 

Alors, quand je clique sur le bouton soumettre, magasins de texte dans DataItem.scraps (qui est la colonne dans ma base de données tableau) et affiche dans le contrôle du répéteur. Mais quand j'entre le texte multiligne dans TextBox, il est affiché singleline dans le contrôle du répéteur.

Je veux qu'il soit affiché contrôle de répéteur multiligne.

Alors, quel est le problème exactement 1) Est-il stocker du texte SingleLine dans la base de données 2) ou problème de contrôle répéteur

Et, comment le résoudre?

S'il vous plaît aidez-moi.

Merci à l'avance, Nikhil

+0

Multiline quoi? Zone de texte multiligne? Plusieurs éléments dans le répéteur? –

Répondre

4

Le contrôle de répéteur est assez simple. Il n'y a pas de raison que vous ne puissiez pas contrôler votre sortie de manière très approfondie, il suffit de tout mettre dans votre modèle d'élément:

<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> 
+0

J'ai mis à jour la question monsieur pour être plus précis .... Vous m'aidera encore. –

+0

Étant donné que vous avez utilisé une zone de texte multiligne pour enregistrer les données initiales, utilisez à nouveau une zone de texte multiligne lorsque vous l'affichez. Juste faire le contrôle en lecture seule. Le web ne montre pas les sauts de ligne, c'est pourquoi vous ne voyez qu'une seule ligne. Mettre vos données dans une zone de texte multiligne devrait résoudre cela. Si ce n'est pas le cas, vous devrez encoder vos données avant de les enregistrer pour que toutes les modifications de ligne soient remplacées par "
". – rkw

Questions connexes