繁体   English   中英

在代码隐藏中设置图像宽度/高度-ASP.NET,C#

[英]Setting Image Width/Height in codebehind - ASP.NET, C#

我正在尝试在代码背后的数据列表中设置图像的宽度和高度。

计划是根据宽度/高度来做比这更复杂的事情,因此不能将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);
    }

上面的代码所引用的图像控件可能未指定宽度和/或高度。

要执行您想要的操作,我相信您将需要获取图像源并将其使用GDI加载到内存中。 然后,您可以确定宽度和高度。 然后,您就可以对高度和宽度进行调整,并将其应用于image标签的属性。

请记住,使用img标签时,默认情况下不会设置widthheight 在这种情况下,除非您设置WidthHeight ,否则它们将为0(或未定义)。 如果您需要实际的(图像,像素)宽度和高度,则需要通过将图像加载到内存中来自己发现。

取决于文件类型,.NET可能已经具有解码器或已将其加载的功能。 将其加载Bitmap然后查询那里的宽度和高度。

我不确定c#,但可以在VB.net中以这种方式进行编码,因此我确定有些东西是相当令人困惑的,并且它看起来可以解决您的意图,即使不是您的实际编码问题。

使用dImage
宽度= 50%
高度= 50%
结束于

我尝试了在我的xaml中设置图像高度以及将其遗漏的方法。

-出于布局目的进行了编辑。

您是否尝试过为图像声明/定义OnLoad处理程序并在其中设置高度/宽度?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM