Hej, Det finns ingen "current" HtmlTextWriter, den används bara under renderingen.Problem med Attributes.Add på en listbox
jag sitter och jobbar i C#, .Net Framework 1.1.
Jag har ett web-formulär i vilket man läser upp en mängd data och visar denna, bl a en lista över valda kontakpersoner. Dessa visas i en listbox. När jag laddar listboxen sätter jag id, text men också ett antal attributes:
<CODE>
li.Attributes.Add("last_name", drContact.last_name);
li.Attributes.Add("first_name", drContact.first_name);
li.Attributes.Add("location", drContact.location);
li.Value = drContact.its_contact.ToString();
li.Text = drContact.first_name + " " + drContact.last_name + "(" + drContact.location + ")";
</CODE>
Anledningen till att sätter attributen är för att jag behöver komma åt de enskilda fälten när jag klickar på en knapp som öppnar ett modalt fönster där viss behandling sker. Tänkte att Attributes passar perfekt för att lösa mitt problem men attributen "biter" inte, när jag kör en postback är attributen bara tomma strängar. Har kommit fram till att man skall använda li.Attributes.Render(HtmlTextWriter writer) men fattar inte hur jag skall skriva.
Till saken hör att jag har ett antal metoder som laddar olika kontroller på liknande sätt, dels listboxar och dels datagrids så jag vill inte behöva skriva om allting på sidan utan vill bara få Render-funktionen att fungera. Går det att få tag i ngn "current" HtmlTextWriter som man kan skicka in i Render-funktionen? Hur gör man?
/MagnusSv: Problem med Attributes.Add på en listbox
Ifall du vill anropa Attributes.Render så är det bara att skapa en ny HtmlTextWriter och skicka in i den. Det du får ut är html-koden för attributen i taggen, men jag misstänker att du inte alls har någon nytta av det...