我在DevExpress Gridview Concepts中工作。我是新来的。我的要求是,我应该在gridview中显示图像。如果存在多个图像,则应将其粘贴在第二行。我将从数据库中获取图像路径。在DevExpress Gridview中绑定图像
请提供示例代码。我搜索了很多谷歌,但我无法找到这种特殊情况。
在下面的链接,我给我的源代码的一部分..
http://community.devexpress.com/forums/p/105855/358119.aspx#358119
我在DevExpress Gridview Concepts中工作。我是新来的。我的要求是,我应该在gridview中显示图像。如果存在多个图像,则应将其粘贴在第二行。我将从数据库中获取图像路径。在DevExpress Gridview中绑定图像
请提供示例代码。我搜索了很多谷歌,但我无法找到这种特殊情况。
在下面的链接,我给我的源代码的一部分..
http://community.devexpress.com/forums/p/105855/358119.aspx#358119
你可以通过不同的方式.......
public class MyClass
{
public int ID { get; set; }
public byte[] MyImage { get; set; }
}
这是一个存储图像作为二进制blob(MS SQL图像或varbinary(max),Oracle BLOB等的表的包装类)
我发现了4种不同的方式(即“简单方法”;当然有无数的其它更复杂的替代品),以显示该二进制数据作为图像,利用内部的ASPxGridView的DevExpress' ASPxImage和ASPxBinaryImage控制:
<dx:ASPxGridView ID="gridImages" runat="server"
AutoGenerateColumns="False" KeyFieldName="ID">
<Columns>
<dx:GridViewDataTextColumn Caption="ID" FieldName="ID">
</dx:GridViewDataTextColumn>
使用像
var images = database.Query<MyImages>().OrderBy(r => r.ID);
gridImages.DataSource = images;
gridImages.DataBind();
查询中使用GridViewDataBinaryImageColumn
<dx:GridViewDataBinaryImageColumn FieldName="MyImage">
</dx:GridViewDataBinaryImageColumn>
insid使用ASPxBinaryImage E中的DataItemTemplate
<dx:GridViewDataColumn FieldName="MyImage" >
<DataItemTemplate>
<dx:ASPxBinaryImage ID="img" runat="server"
Value='<%# Eval("MyImage") %>'>
</dx:ASPxBinaryImage>
</DataItemTemplate>
</dx:GridViewDataColumn>
ASPxBinaryImage使用Value属性来存储一个字节数组,其中所述的DevExpress框架转换成其中的src请求的DevExpress实现的URL来服务字节流。
如果你喜欢ASP:图像或ASPxImage到ASPxBinaryImage,你需要编写一个ashx的处理程序,以获取图像数据:
public class MyImageHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
int id = 0;
int.TryParse(context.Request["id"], out id);
var image = database.FirstOrDefault<MyClass>(c => c.ID == id);
if (image == null)
{
context.Response.Clear();
return;
}
context.Response.ContentType = "image/png";
context.Response.BinaryWrite(image.MyImage);
context.Response.End();
}
此。ashx的处理程序是通过设置的ImageUrlFormatString调用的GridViewDataImageColumn
或设置的ASPxImage的ImageUrl属性:
<dx:GridViewDataColumn >
<DataItemTemplate>
<dx:ASPxImage runat="server" ID="imgTemplate"
ImageUrl='<%# "myimage.ashx?id=" + Eval("ID") %>'>
</dx:ASPxImage>
</DataItemTemplate>
</dx:GridViewDataColumn>
</Columns>
您的搜索条件的DevExpress支持中心。这里有例子网页:
我无法打开此链接.. – RobinHood
转到devexpress支持中心devexpress.com/support/center并在gridview中键入图像搜索。请务必查看问题和知识库文章的选项卡。如果这不能解决您的问题,那么支持中心是您解答问题的最佳选择。 –
以下知识库文章介绍如何完成这一任务: http://www.devexpress.com/Support/Center/KB/p/A2707.aspx
它描述的主要思想,并包含一个例子,它可以下载
我已经试过这个例子。它不符合我的要求 – RobinHood
你是什么平台感兴趣? – Mikhail
我在.Net和SQL Server中工作。在这我使用DevExpress GridView .. – RobinHood
哪一个DevExpress GridView? ASP.NET,WinForms,WPF,SL,VCL? – Mikhail