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.

War es hilfreich?

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!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top