11
Chcę dodać atrybut href do elementu łącza. To jest mój kod:Jak poprawnie dodawać atrybuty przy renderowaniu za pomocą HtmlTextWriter?
System.Text.StringBuilder stringBuilder = new System.Text.StringBuilder();
using (System.IO.StringWriter stringWriter = new System.IO.StringWriter(stringBuilder))
{
using (System.Web.UI.HtmlTextWriter htmlTextWriter = new System.Web.UI.HtmlTextWriter(stringWriter))
{
htmlTextWriter.RenderBeginTag(HtmlTextWriterTag.Ul);
htmlTextWriter.RenderBeginTag(HtmlTextWriterTag.Li);
htmlTextWriter.RenderBeginTag(HtmlTextWriterTag.A);
htmlTextWriter.AddAttribute(HtmlTextWriterAttribute.Href, "http://www.google.de");
htmlTextWriter.Write("Google");
htmlTextWriter.RenderEndTag();
htmlTextWriter.RenderEndTag();
htmlTextWriter.RenderEndTag();
}
}
To świadczy jak:
<ul>
<li><a>Google</a></li>
</ul>
to, czego się spodziewałem.
<ul>
<li><a href="http://www.google.de">Google</a></li>
</ul>
Co poszło nie tak i jak mogę rozwiązać ten problem?
Proszę nie odpowiadać, że mógłbym złożyć łańcuch w jakiś inny sposób. Chcę wiedzieć, w jaki sposób mogę to osiągnąć przy użyciu znacznika HtmlTextWriter
Dzięki, nie myślałem o tym, ale to ma sens;) – citronas
prawda? Nie sądzę, żeby to miało jakikolwiek sens! – roryok
@roryok To ma (sens, to znaczy). Metoda RenderBeginTag faktycznie renderuje znacznik, więc późniejsze określenie atrybutów jest bezużyteczne. –