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;

    }
}
}

c#基于sql查询中的另一列格式化数据列表/数据网格

当你知道怎么做的时候好容易!在谷歌的深处找到了我的答案,希望它能帮助到别人,

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";
                }
            }
        }