gpt4 book ai didi

c# - 如何在不将图片保存到硬盘的情况下在 gridview 行中显示图片?

转载 作者:太空宇宙 更新时间:2023-11-03 19:25:06 25 4
gpt4 key购买 nike

我正在创建一个购物网站。我有一个 gridview,它绑定(bind)到用于管理任务的 objectdatasource 控件。此网格负责显示 sql server 数据库中的项目表。每个项目也可能有也可能没有图片。所以当这个网格显示给管理员时,我希望每一行都有一个相关图像的小缩略图。这是 GridView 代码:

<asp:GridView ID="gridview1" runat="server" 
DataSourceID="objDataSource" DataKeyNames="item_id">
<Columns>
<asp:BoundField DataField="item_category" Visible="false" />
<asp:BoundField HtmlEncode="true" DataField="item_name"
HeaderText="Item Name" />
<asp:BoundField HtmlEncode="true" NullDisplayText="Not Set"
DataField="item_desc" HeaderText="Item Description" />
<asp:TemplateField HeaderText="Item Picture"
ItemStyle-Width="40px" ItemStyle-Height="40px">
<ItemTemplate>
<!-- here should be the image -->
</ItemTemplate>
</asp:TemplateField>
<asp:CommandField ButtonType="Button" ShowSelectButton="True"
HeaderText="Selecting" />
</Columns>
</asp:GridView>

关于在浏览器中显示图像,我只知道两个选项:

  • 在响应流上保存一个位图。当它呈现给客户端时,这不会在 gridview 内部(正确吗?)。
  • 在选择语句后将位图保存在硬盘驱动器上,并在模板内使用图像控件,然后动态分配 ImageUrl 属性。

第二个选项太贵了,因为它需要在硬盘驱动器上为每个图像(或数据行)写入和读取。那我该怎么做呢?有可能吗?

ps:ajax 不是一个选项。

最佳答案

创建一个处理您的图像的 ASP.NET Web 处理程序(.ashx 文件),将图像的 ID 传递给您的 gridview 并创建一个指向该图像处理程序的“链接”,该处理程序将显示图像(如果存在),或者可能显示“无可用图像”图像

这是关于 ASHX 文件的快速教程:http://www.dotnetperls.com/ashx

如果你需要,我可以发布额外的代码

关于c# - 如何在不将图片保存到硬盘的情况下在 gridview 行中显示图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9362860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com