9

HyperLink にあるので、HyperLinkField に ToolTip フィールドがあればいいのにと思います。データ ソースにバインドする前に、コードで HyperLinkField を作成しています。

HyperLinkField hl = new HyperLinkField(); 
hl.DataNavigateUrlFields = new string[] { "col" };
hl.DataNavigateUrlFormatString = "{0}";
hl.DataTextField = "Foo";

ツールチップ (または代替テキスト) としてレンダリングされるものに値を設定する方法はありますか? どんな助けでも大歓迎です。

4

2 に答える 2

12

そうです、 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インターフェイスを実装する独自のクラスを作成する必要があります。ここにそれに関するチュートリアルがあります。

于 2009-04-29T18:56:29.553 に答える
7

. _ <asp:HyperlinkField>_ RowDataBound_ GridViewGridView を DataSource にバインドした後、RowDataBound次のようにイベントでこれを行うことができます。

if (e.Row.RowType == DataControlRowType.DataRow)
{
    e.Row.Cells[0].ToolTip = "Your tooltip text";
}

あなたは別の回答を受け入れましたが、私の回答は他のユーザーにとって役立つかもしれません!

于 2011-08-31T10:33:32.830 に答える