asp.net HyperLinkFieldにはToolTipプロパティがありません(Altテキスト)
質問
HyperLinkにはToolTipフィールドがあるので、HyperLinkFieldにToolTipフィールドがあればいいのにと思います。 データソースにバインドする前にコードでHyperLinkFieldを作成しています:
HyperLinkField hl = new HyperLinkField();
hl.DataNavigateUrlFields = new string[] { "col" };
hl.DataNavigateUrlFormatString = "{0}";
hl.DataTextField = "Foo";
ツールチップ(または代替テキスト)としてレンダリングする値を設定する方法はありますか? 助けていただければ幸いです。
解決
それは正しい、 HyperlinkField 。この欠点を回避するには、テンプレートフィールドを使用し、通常のハイパーリンクコントロールを追加する必要があります。
<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>
ただし、プログラムでこれを行うには多くの作業が必要です。 を実装する独自のクラスを作成する必要があります。 ITemplate インターフェース。以下に チュートリアル があります> p>
他のヒント
<asp:HyperlinkField>
のRowDataBound
イベントでその特定のセルのツールチップを追加することにより、GridView
自体で要件を満たすことができます。 GridViewをDataSourceにバインドした後、次のように<=>イベントでこれを実行できます。
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Cells[0].ToolTip = "Your tooltip text";
}
別の回答を受け入れましたが、他のユーザーにとっては私の回答が役立つかもしれません!
所属していません StackOverflow