protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
try
{
Image SmallImage = (Image)e.Item.FindControl("image1"); if (SmallImage.ImageUrl == null || SmallImage.ImageUrl == "")
{
//SmallImage.ImageUrl = ConfigurationManager.AppSettings["SmallImage"];
SmallImage.ImageUrl = "images/productimages/" + ConfigurationManager.AppSettings["LargeImage"];
SmallImage.ToolTip = "Default Image";
}
else
{
SmallImage.ImageUrl = "images/productimages/" + SmallImage.ImageUrl;
SmallImage.ToolTip = "Product Image -" + SmallImage.ToolTip;
string a = SmallImage.Width.ToString();//在这设断点,获取到的宽度是空
//if (Convert.ToInt16(SmallImage.Width) < 100 || Convert.ToInt16(SmallImage.Height) < 100)
// SmallImage.CssClass = "thumbimage2";
}
}
catch (Exception ex)
{ ex.ToString(); }在Datalist 里<ItemTemplate>有个
<asp:Image ID="Image1" runat="server" CssClass="thumbimage" ImageUrl='<%# Eval("SMALL_IMAGE") %>' ToolTip='<%# Eval("SMALL_IMAGE") %>'/>
但为什么获取不到此图片和高度和宽度,是我代码的问题,还是控件的问题?:( 郁闷很长时间了
{
try
{
Image SmallImage = (Image)e.Item.FindControl("image1"); if (SmallImage.ImageUrl == null || SmallImage.ImageUrl == "")
{
//SmallImage.ImageUrl = ConfigurationManager.AppSettings["SmallImage"];
SmallImage.ImageUrl = "images/productimages/" + ConfigurationManager.AppSettings["LargeImage"];
SmallImage.ToolTip = "Default Image";
}
else
{
SmallImage.ImageUrl = "images/productimages/" + SmallImage.ImageUrl;
SmallImage.ToolTip = "Product Image -" + SmallImage.ToolTip;
string a = SmallImage.Width.ToString();//在这设断点,获取到的宽度是空
//if (Convert.ToInt16(SmallImage.Width) < 100 || Convert.ToInt16(SmallImage.Height) < 100)
// SmallImage.CssClass = "thumbimage2";
}
}
catch (Exception ex)
{ ex.ToString(); }在Datalist 里<ItemTemplate>有个
<asp:Image ID="Image1" runat="server" CssClass="thumbimage" ImageUrl='<%# Eval("SMALL_IMAGE") %>' ToolTip='<%# Eval("SMALL_IMAGE") %>'/>
但为什么获取不到此图片和高度和宽度,是我代码的问题,还是控件的问题?:( 郁闷很长时间了
System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath("相对路径"));
int height = img.Height;
int width = img.Width;
获得该图片的高度和宽度,其他情况恐怕就不太容易了~
System.Drawing.Image img = System.Drawing.Image.FromFile(Server.MapPath("相对路径"));
int height = img.Height;
int width = img.Width;
获得该图片的高度和宽度,其他情况恐怕就不太容易了~
-------
谢谢你 ,我也想过用此方法,这样的话Datalist每邦定一个,就要读一次硬盘.会不会影响服务器的性能.难道真就没有获取图片高.宽度的直接方法吗?
我获取此图片的高.宽度是为了根据它的大小按比例缩放.
他有个图片是94*243. 如果我固定高度为100PX ,他有的图片是248*52