c#基于sql查询中的另一列格式化数据列表/数据网格
本文关键字:格式化数据 一列 列表 网格 数据网 数据 查询 sql 基于 | 更新日期: 2023-09-27 18:08:47
关于如何在数据列表中设置单元格格式的快速问题
使用文章http://msdn.microsoft.com/en-us/library/bb510136.aspx ..我不确定如何引用我的sql查询绑定到我的数据表行。
有人能告诉我如何引用行,这样我就可以根据查询行中的其他值格式化我的数据表。我是否必须使mydatreader公开,以便它可以被itemdatabound事件读取?或者最好的引用方式
感谢<asp:DataList ID="DataList1" GridLines="Both" RepeatColumns="4"
RepeatDirection="Horizontal" OnItemDataBound="DataList1_ItemDataBound" Width="300px" runat="server">
<ItemTemplate>
<div>
<span><strong><%# Eval("col1") %></strong></span>
</div>
</ItemTemplate>
</asp:DataList>
protected void DataList1_ItemDataBound
(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem)
{
// Programmatically reference the ProductsRow instance bound
// to this DataListItem
//??? I need to edit below to reference the row of my query bound to
//my datalist
Northwind.ProductsRow product =
(Northwind.ProductsRow)((System.Data.DataRowView)e.Item.DataItem).Row;
}
}
}
当你知道怎么做的时候好容易!在谷歌的深处找到了我的答案,希望它能帮助到别人,
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item ||
e.Item.ItemType == ListItemType.AlternatingItem)
{
System.Data.Common.DbDataRecord dbdr = (System.Data.Common.DbDataRecord) e.Item.DataItem;
// Access Data in the Datareader
int MD = Convert.ToInt32 (dbdr [2]);
int MN = Convert.ToInt32 (dbdr [3]);
DateTime DT = Convert.ToDateTime (dbdr [1]);
if (DT <= System.DateTime.Today || MD <= MN)
{
e.Item.CssClass = "red";
}
}
}