2011-08-12 19 views
2

これは、背景イメージを持つCommandFieldのコードです。変更方法aspのホバー上の背景イメージ:GridviewのCommandField

<asp:CommandField DeleteImageUrl="~/cms_images/cancel.gif" ShowDeleteButton="true" ButtonType="Image" />

私は、ユーザーがCommandFieldに置いたときに、この画像"~/cms_images/cancel-hover.gif"を表示したいと思います。
どうすればよいですか?

ありがとうございました。

+1

ちょうど不思議の国の国会主義で、なぜあなたはサーバー側でそれが起こりたいのですか?イメージのロールオーバーは、通常、JavaScript/JQueryを使用してクライアント側で処理されるため、イメージを簡単にスワップするためにページをサーバーに戻す必要はありません。 – Tim

+0

申し訳ありませんが複雑です。私は、実際のスワッピングではなく、サーバー側でmouseoutとmouseoverのイメージについて言及したかったのです。それに応じて編集。 –

+0

私はまだ不必要に複雑なように、サーバー側でこれを達成したいのはなぜか分かりません。ユーザーがボタンの上にマウスを移動してサーバーにポストバックすると、ボタンが再描画されるまでにマウスが上に移動しなくなることがあります。 – Tim

答えて

5

これはCSSで実現できます。 - ページのマークアップではあなただけのコマンドフィールドに特定のスタイルを宣言する必要があり、基本的にこれはボタンのCSSスタイルです:

<asp:CommandField ShowDeleteButton="true" ButtonType="Button" ControlStyle-CssClass="cancel" /> 

との.cssファイルにこのスタイルを定義し、ときに、ユーザー、それがどのように変化するかを定義します

.cancel 
{ 
    background-image: url(cms_images/cancel.gif); 
} 

.cancel:hover 
{ 
    background-image: url(cms_images/cancel-hover.gif); 
} 

注意:CSSでは、ページの位置を基準にURLを指定する必要があります。上記のコードでは、ページがWebサイトのルートフォルダにあると仮定します。

+0

このコードを使うと、 '

+2

@Andrei: 'ButtonType =" Button "を設定してください。 +1 – naveen

+1

@naveen - thx、それを逃した。私は投稿を更新しました。 – Andrei