asp.net Hyperlink Hat keine ToolTip-Eigenschaft (Alt-Text)
Frage
Ich wünsche, es ein Quick-Info-Feld in Hyperlink war, da es eine in HyperLink ist. Ich bin einen Hyperlink von Code zu schaffen, bevor meine Datenquelle Bindung:
HyperLinkField hl = new HyperLinkField();
hl.DataNavigateUrlFields = new string[] { "col" };
hl.DataNavigateUrlFormatString = "{0}";
hl.DataTextField = "Foo";
Gibt es eine Möglichkeit, auch einen Wert auf etwas festgelegt, die als Tooltip machen (oder Alt-Text)? Jede Hilfe wird geschätzt.
Lösung
Das ist richtig, es gibt keine Tooltip / Alt-Text-Eigenschaft in einem Hyperlink . Um dieses Manko zu erhalten, müssen Sie ein Template-Feld verwenden und ein regelmäßiges Hyperlink-Steuerelement hinzufügen.
<asp:TemplateField HeaderText="Href">
<ItemTemplate>
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%#
Eval("Href") %>' Text='<%# Eval("Href") %>' ToolTip='<%# Eval("Text") %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
Allerdings erfordert dies zu tun in einer programmatischen viel Arbeit. Sie benötigen eine eigene Klasse erstellen, die die ITemplate Schnittstelle. Hier ist ein Tutorial auf das.
Andere Tipps
Ihre Anforderung kann in <asp:HyperlinkField>
Fall eines RowDataBound
für die jeweilige Zelle durch Zugabe von Tooltip in GridView
selbst accompished werden. Gridview zu Ihrer Datasource Nach dem Binden Sie können in einem RowDataBound
Ereignis dazu wie folgt vor:
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[0].ToolTip = "Your tooltip text";
}
Auch wenn Sie eine andere Antwort akzeptiert haben, ist meine Antwort kann für einige andere Benutzer nützlich sein!