事先不知道你也可以用datagrid来显示呀
<asp:templatecolumn
>
<itemtemplate>
<img src='<%#databinder.eval(container.dataitem,"image")'>
</itemtemplate>
</asp:templatecolumn
>
<asp:templatecolumn
>
<itemtemplate>
<img src='<%#databinder.eval(container.dataitem,"image")'>
</itemtemplate>
</asp:templatecolumn
>
解决方案 »
- 关于cuteeditor的问题(读出内容显示html代码)
- 救命,Image1.ImageUrl路径改变,图片不会变
- asp.net2.0母版页
- 老问题wen打印大家探讨一下。
- 在HyperLink中放图片,但从数据库中取出多大,显示就多大
- .NET网站 用COOKIE做身份验证问题!
- 求一正则表达式,将图片地址转换成<img src=地址>谢谢
- 谁知道如何用outlook组件来发送邮件?
- asp.net 变量名 '@original_Category' 已声明。变量名在查询批次或存储过程内部必须唯一。 “,”附近有语法错误。
- 请问如何在只有.netFrame,而没有开发工具(如VS)的环境中注册第三方Web控件
- TextBox 设置为多行时,怎么给它赋值?
- 请看看这可能是什么原因引起的错误
再在DList1的模板中放一个Image控件,绑定图像来源为图像表
比如,DataGrid中显示名称,编号,简介等信息假设为UserInfo表
但是图片是从另一个表中取假设是UserImage表
在DataGrid的ItemDataBound事件中再根据UserInfo表的关键字,假设是UserID
从UserImage表中取出N条记录,绑定到DList
实现方法如下
页面设计:
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False" DataKeyField="UserID">
<Columns>
<asp:BoundColumn DataField="用户名" HeaderText="用户名"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="图片">
<ItemTemplate>
<asp:DataList id="DList1" runat="server">
<ItemTemplate>
<IMG alt="" src='<%# DataBinder.Eval(Container, "DataItem.图片") %>'>
</ItemTemplate>
</asp:DataList>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>代码:
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
BindGrid();//绑定数据到DataGrid
}
}private void BindGrid()
{
OleDbConnection conn=(OleDbConnection)Session["conn"];
try
{
conn.Open();
//取出用户信息
string sSel = "SELECT UserID,用户名 FROM UserInfo";
OleDbDataAdapter da = new OleDbDataAdapter(sSel,conn);
DataSet ds = new DataSet();
da.Fill(ds);
DataGrid1.DataSource=ds;
DataGrid1.DataBind();
}
finally
{
conn.Close();
}
}//在用户信息绑定的同时,查询此用户的图片,并绑定到DataList上
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
//以DataGrid的关键字做查询,前提是DataGrid的关键字设置为用户ID
string sID = ((DataGrid)sender).DataKeys[(int)e.Item.ItemIndex].ToString();
OleDbConnection conn=(OleDbConnection)Session["conn"];
try
{
if (conn.State.ToString() !="Open") conn.Open();
//根据关键字(UserID)查询此用户的图片
string sSel = "SELECT 图片 FROM UserImage Where UserID = " + sID ;
OleDbDataAdapter da = new OleDbDataAdapter(sSel,conn);
DataSet ds = new DataSet();
da.Fill(ds);
//因为DataList在模板中,所以无法直接使用,只能通过查找控件的方式来使用
DataList DList = (DataList)e.Item.FindControl("DList1");
//将图片绑定到DataList上显示
DList .DataSource = ds;
DList .DataBind();
}
finally
{
conn.Close();
}
}