Controls.Add
テキストと画像の両方を追加する必要があるASP.NETリンクボタンがあります。サイコロを使用せずにボタンに画像を追加できると思いました。
これが私がこれまでに持っているものです:
foreach (var entity in metadata.Meta.Where(e => e.ReportableObject == true))
{
LinkButton lb = new LinkButton();
string iconpath = "~/images/search/" + entity.ClassName + ".png";
lb.CssClass = "entityIcon";
lb.Controls.Add(new Image { ImageUrl = iconpath , CssClass = "imgSize"});
lb.Text = entity.ClassName;
entityHolder.Controls.Add(lb);
}
コントロールがレンダリングされると、テキストは表示されますが、画像コンテナもレンダリングされません。それが画像へのパスだったのではないかと思いましたが、完全修飾パスを使用して既存のサイトから画像にマップしようとしても、何もレンダリングされませんでした。
編集:明確にするために、メインページ(リンクまたは画像)にasp.netコントロールはありません。このforループは、コレクションを繰り返し、実行時にコントロールを作成します。最後の行entityHolder
は、ボタンが追加されるASP.NETパネルです。
これが可能である場合でも、誰かが私が間違っていることを理解するのを手伝ってくれますか?テキストと画像の両方をレンダリングする必要があるため、ではLinkButton
なくを使用する必要があります。ImageButton
乾杯