我正在使用webservice将图像从数据库加载到imagebox。 如果数据库没有任何图像,则显示带有无图像pic的图像框。但是我想让图像框在没有图像时不可见
以下是我用来加载图片的代码
MyImg.ImageUrl = @"~/ShowImage.ashx?id=" + MyID;
提前感谢您的回复..
答案 0 :(得分:1)
您可以执行以下操作:
if (DoesImageExist(MyID)) {
MyImg.ImageUrl = @"~/ShowImage.ashx?id=" + MyID;
// Just in case we hid the image during the previous request
// and ViewState is enabled:
MyImg.Visible = true;
} else {
MyImg.Visible = false;
}
答案 1 :(得分:0)
当你的处理程序被调用时,让控件不可见为时已晚。
然而,您可以做什么(当数据库没有返回图像时)然后返回一些固定的单个白色(或透明)像素图像。 <img>
标记仍在页面上,但用户未看到“图片不可用”错误。
唯一的另一种方法是在渲染控件时检查数据是否可用(不需要获取完整的图像,只需它就在那里),这样就可以在没有图像时使其不可见。