Ich arbeite mit einem benutzerdefinierten DropDownList-Steuerelement in ASP.Net und es gab eine Anforderung, bestimmte Elemente in der Liste mit einer Fettschrift Schriftart anzuzeigen (HINWEIS - Das Steuerelement erbt von CompositeDataBoundControl, so dass es datengebunden sein kann ... nicht DropDownListBox). Das Steuerelement ist an eine Tabelle gebunden, und es gibt eine Spalte in der Tabelle namens IsUsed. Wenn dies auf true festgelegt ist, sollte das entsprechende Element in der Liste fett dargestellt werden. (Es sollte hier angemerkt werden, dass dies nur in FireFox immer angezeigt wird.)Wie ein DropDownList-Steuerelement einige Elemente fett angezeigt werden ASP.NET
Meine Erfahrung ist alles in der Mitte \ Backend Tiers, so dass die Präsentationsebene ist sehr neu für mich - kann mir jemand in die richtige Richtung zeigen? Mein erster Gedanke war, dass ich irgendwo im benutzerdefinierten Steuerelement Zugriff auf alle Zeilen hatte, die von der Datenquelle zurückgegeben wurden, mit denen ich usw. durchgehen konnte, aber ich bin mir nicht sicher, ob das möglich ist ... Es gibt auch RenderContents, die ich überschreiben kann ... sieht interessant aus!
Ich würde unsere Beschreibung und die IsUsed-Felder trennen und dann brauchen Sie die Zeichenfolge nicht in den RenderContents aufzuteilen. ** Sie möchten nicht, dass sich Ihre Datenschicht um die Präsentation sorgt **. Gibt es einen Grund, warum das dritte Feld nicht zurückgegeben werden kann? – earthling
Es ist der Code im benutzerdefinierten Steuerelement, der die Zeichenfolge aufteilt, aber ich sehe Ihren Punkt. Ich weiß einfach nicht genug über die Datenbindung - also ist es egal, wie viele Felder mein SP zurückgibt, weil ich einfach auswählen und auswählen kann, was mit ihnen im Dropdown-Listen-Code zu tun ist. Ich gebe es morgen, wenn ich im Büro bin, definitiv eleganter als eine abgegrenzte Saite! –
Sieht nicht so aus, als könnte ich es so machen ... In RenderContents habe ich anscheinend nur Zugriff auf die items -Eigenschaft der ddl - die Elemente haben nur die Beschreibung und die ID aus dem gespeicherten proc, das 3. Feld, das ich gerade hinzugefügt habe ignoriert ... –