我有一个 ASP.NET 链接按钮,我需要将文本和图像添加到我认为我可以使用 Controls.Add
将图像添加到按钮但没有骰子.
这是我目前所拥有的:
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
因为我需要同时呈现文本和图像。
干杯
最佳答案
您必须通过操作控件的 Text 属性来呈现 <img
标记例如:
foreach (var entity in metadata.Meta.Where(e => e.ReportableObject == true))
{
LinkButton lb = new LinkButton();
string iconpath = ResolveClientUrl("~/images/search/" + entity.ClassName + ".png");
lb.CssClass = "entityIcon";
lb.Text = string.Format(@"image <img src=""{0}"" class=""{1}"" />",iconpath,"imgSize");
entityHolder.Controls.Add(lb);
}
关于c# - 如何以编程方式将图像添加到 asp.net 链接按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13960958/