【问题标题】:How do I set the contents of an ASPxImageZoom control?如何设置 ASPxImageZoom 控件的内容?
【发布时间】:2016-03-22 03:08:44
【问题描述】:

我正在尝试为 Dev Express ASPxImageZoom 控件编写一个属性编辑器,以便我可以在 XAF 应用程序中使用它来显示图像。

图像存储在字节数组中。

我想将控件的值设置为包含字节数组的内容。

但是我无法从文档中弄清楚如何做到这一点。 https://documentation.devexpress.com/#AspNet/clsDevExpressWebASPxImageZoomtopic

【问题讨论】:

  • 有没有办法从 byte[] 变量创建 uri?

标签: c# asp.net devexpress


【解决方案1】:

您可以将字节数组分配给 ASPxZImageZoom 控件。在下面的代码中,我只是读取一个文件并将其转换为字节数组,但您可以直接分配您的字节数组。

protected void Page_Load(object sender, EventArgs e)
{
    string filePath = Server.MapPath("~/Images/41LR9-Q2W-L._AC_UX500_SY400_.jpg");
    if (File.Exists(filePath))
    {
        Byte[] bytes = File.ReadAllBytes(filePath);
        string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
        ASPxImageZoom1.ImageUrl = "data:image/png;base64," + base64String;    
    }            
}

希望帮助您以正确的方式实施。仅供参考。注意此类实现的错误处理。

【讨论】:

  • 我收到一个错误。指定的路径、文件名或两者都太长。完全限定文件名必须少于 260 个字符,目录名必须少于 248 个字符。
  • 通过创建方法将该字节转换为图像参考this.. 仅参考答案中的第一个方法代码..
  • 我已经问过这是否可以在没有临时文件的情况下完成。 stackoverflow.com/questions/34363040/…
  • 你在哪里创建临时文件。此图像对象将驻留在内存中。您不需要在服务器文件夹上创建临时文件。只需将字节转换为图像并将其分配给控件..
  • 为控件设置图像的唯一方法是设置它的 ImageUrl 属性,该属性是一个字符串。我无法直接将图像分配给控件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多