我试图在代码背后的数据表中设置图像的宽度和高度。
计划是根据宽度/高度做一些比这更复杂的事情,因此在aspx文件中将宽度和高度设置为50%不是一个选项。
由于某种原因,我总是得到0的宽度和高度。Image1.ImageUrl是我通过所期望的。有什么想法吗?图像是System.Web.UI.Webcontrols.Image,而不是System.Drawing.Image。
protected void DataList9_ItemDataBound(object sender, DataListItemEventArgs e)
{
Image Image1 = (Image)e.Item.FindControl("Image1");
double height = Image1.Height.Value;
double width = Image1.Width.Value;
height = height * 0.5;
width = width * 0.5;
Image1.Height = new Unit(height);
Image1.Width = new Unit(width);
}发布于 2010-07-27 18:20:19
记住,使用img标记,默认情况下不设置width和height。在这种情况下,除非设置Width和Height,否则它们将为0(或未定义)。如果您需要实际的(图像,像素)宽度和高度,您将需要通过将图像加载到内存中来发现这一点。
根据文件类型的不同,.NET可能有一个解码器,或者已经有能力加载它。将其加载到Bitmap中,然后查询那里的宽度和高度。
发布于 2010-07-27 18:19:35
上面的代码引用的是图像控件,该控件很可能没有指定宽度和高度。
要想做您想做的事情,我相信您需要获取映像的源,并使用GDI将其加载到内存中。然后你就可以确定宽度和高度了。然后,您将能够对高度和宽度进行调整,并应用于图像标记的属性。
发布于 2010-07-27 20:13:49
我不确定c#,但我可以在VB.net中用这种方式对它进行编码,所以我确信有一些类似的东西,看起来它将解决您的意图,如果不是您的实际编码问题。
用dImage
.Width = 50%
.Height = 50%
尾声
我尝试了在我的xaml中设置图像高度,同时也忽略了它。
-为版面而编辑。
https://stackoverflow.com/questions/3346452
复制相似问题