2

ImageButton製品のリストを特定の製品グループにフィルター処理するために使用されるポストバックを引き起こすいくつかのコントロールを含む ASP.NET Web サイトがあります。

ImageButton は次のように作成されました。

ImageButton _myImageButton = new ImageButton();
_myImageButton.ImageUrl = PicturePath + PictureName;
_myImageButton.Attributes.Add("border", "0");
_myImageButton.OnClick += handleImageButtonClick();
Controls.Add(_myImageButton);

今、私は ASP.NET 4.0 に移行し、SEO に適したパス/products/category/itemを使用しています。Web フォームでルーティングを使用して、URL を Web フォームにマップしています。その過程で、ナビゲーション URL を各画像に関連付けられるように、画像ボタンを画像を表示するハイパーリンク コントロールに置き換えたいと考えています。

次のような新しい画像ハイパーリンクを作成しています。

HyperLink _myImageLink = new HyperLink();
_myImageLink.ImageUrl = PicturePath + PictureName;
_myImageLink.NavigateUrl = "/products/category/" + itemName;
_myImageLink.Attributes.Add("border", "0");
Controls.Add(_myImageLink);

私が直面している大きな問題:画像の周りの境界線を避けるために、HTML のタグに属性ImageButtonを配置するために使用されます。しかし、ハイパーリンクコントロールを使用して同じ結果を得るにはどうすればよいですか??border="0"<img>

現在のセットアップでは、がタグborder="0"にくっついてしまいます。これは、<a href="....">まさに私が望んでいる/必要としているものではありません。

何か案は??想い?? 私はすでにクラスの.BorderStyleand.BorderWidth要素を試しましたHyperLink- 私にはうまくいかないようです (まだ私の画像の周りに境界線が見えます)。

私は何が欠けていますか?? どうすれば目標を達成できますか??

4

3 に答える 3

3

この属性は非推奨であるため、ASP.NET 4.0 では自動的に挿入されません。代わりに CSS を使用imgして、問題のタグが境界線を持たないように設定する必要があります。考えられる 1 つの提案は、imgタグ内のaタグに設定することです。

a img{
  border: none;
}
于 2010-10-01T11:21:10.823 に答える
0

国境の理由を知らないようです。

これは単にURLからのものです<a>

シンプルなCSSでそれを修正できます:

a {
  text-decoration: none;
}

text-decoration: none;または、あなたのスタイルに設定することもできますimageLink

myImageLink.Attributes.Add("style", "text-decoration: none");
于 2010-10-01T11:21:00.740 に答える
0

ハイパーリンクのプロパティを設定する代わりにImageUrl、画像をハイパーリンクの子として追加しないでください。そうすれば、必要なすべてのプロパティを設定できます。

于 2010-10-01T11:21:47.787 に答える