Ich versuche, einige TextBoxes
Steuerelemente dynamisch basierend auf Elemente in meiner Datenbank hinzuzufügen. Das ist meine asp:PlaceHolder
in .aspx
SeiteAsp: TextBox funktioniert nicht in ASP: Platzhalter C#
<asp:PlaceHolder ID="PlaceHolderHTML" runat="server"></asp:PlaceHolder>
und jetzt von C# -Code Ich versuche, dynamische HTML
zu erstellen und dann die html zu asp:PlaceHolder
machen.
Das ist mein C# -Code:
StringBuilder data = new StringBuilder();
foreach (SPListItem item in collitem)
{
data.Append(@"
<tr>
<th class='accordionSection esEmplCardSectionHeader'>
<span id='lblSectionName'>
<asp:TextBox ID='TextBox" + item["ID"].ToString() + @"' runat='server'></asp:TextBox>
</span>
</th>
</tr>
}
PlaceHolderHTML.Controls.Add(new Literal { Text = data.ToString() });
aber in Browser die TextBox
Kontrollen nicht gezeigt werden. Wenn ich Element die Textbox inpect ich folgendes Ergebnis sehe:
die textbox
in HTML, so dass zu asp:PlaceHolder
gesendet wird, wird Browser zu wissen, es ist nicht so asp Kontrolle und im Browser nichts gezeigt wird, so wie um dieses Problem zu lösen?
Mögliche Duplikat von [Wie serverseitige Kontrolle in Literal setzen?] (Https://stackoverflow.com/questions/9101804/how-to-put-server-side-control-in-literal) – Laslos
Sie können Hängen Sie nicht einfach das ASPX-Server-Markup an und erwarten Sie, dass die Engine es korrekt rendert. So funktioniert es nicht. Vermeiden Sie es, dynamisch Steuerelemente hinzuzufügen, wenn Sie können. – mason