2016-04-27 14 views
0

Ich versuche, das Attribut "title" für ASP.NET DropDownList-Elemente zu verwenden, um Mouseover-Tooltips für jedes Element anzuzeigen. Wie es scheint, nachdem ich eine Auswahl getroffen und die Liste erneut geöffnet habe, zeigen nur Tooltips für das ausgewählte Element und darunter die QuickInfos an. Zum Beispiel, wenn ich 10 Elemente in meiner Liste habe und die 7. auswählen, zeigen nur 7-10 Tooltips, wenn ich die Liste wieder öffne.Problem Definieren von QuickInfos für ASP.NET DropDownList-Elemente

Ich habe eine View Source der Seite im Browser gemacht, und alle "title" -Attribute sind vorhanden, aber die oberen werden nicht beim Mouseover angezeigt.

Wenn ich das oberste Element in der Liste auswähle, werden alle wieder angezeigt. Aber wenn ich das unterste Element in der Liste auswähle, hat nur dieses Element eine QuickInfo, die angezeigt wird.

Ich habe versucht, sowohl eine abgeleitete Klasse von DropDownList zu definieren und SaveViewState und LoadViewState zu überschreiben, als auch das Attribut auf einem Postback wieder hinzuzufügen; beide zeigen das gleiche Verhalten.

+0

In welchem ​​Browser sehen Sie dieses Verhalten? (Nachtrag: nach meinen Tests muss es im Internet Explorer sein) – ConnorsFan

+0

@ConnorsFan Ja, Sie haben Recht, dies geschieht nur im Internet Explorer. Das ist der Browser, den meine Organisation verwendet. Ich frage mich, ob es eine Arbeit gibt. – MikeC

Antwort

-1

Sie können den folgenden Eintrag verwenden, um den ausgewählten Eintrag an den Anfang der Liste zu setzen. Alle anderen Einträge werden darunter angezeigt.

protected void Page_PreRender(object sender, EventArgs e) { var itemIndex = DropDownList1.SelectedIndex; if (itemIndex != -1) { var item = DropDownList1.Items[itemIndex]; DropDownList1.Items.RemoveAt(itemIndex); DropDownList1.Items.Insert(0, new ListItem(item.Text, item.Value)); } }