这是我的GridView1。我希望突出显示最新记录,并在用户单击授权号后(用户查看下一页中的记录),该行不会突出显示(表示用户查看记录后,行恢复正常,没有突出显示)没有粗体字。)
我目前的进展是, 我在我的数据库中创建了名为ReadStatus的新位字段,默认为0 接下来,我需要进行onrowdatabound编码才能实现这一点。
第一个问题是,当我读完所有这一列时,是否需要读取位列(ReadStatus)?AuthorizationNo,ProductID,Name,Qty,---(ReadStatus)?? 我应该在这段代码中阅读ReadStatus吗?
/ /READING RECORD FROM TABLE TRACK_ITEM
while (reader.Read())
{
MerchantProduct merchantProduct = new MerchantProduct();
merchantProduct.TxID = reader["TxID"].ToString();
merchantProduct.ProductID = reader["ProductID"].ToString();
merchantProduct.Name = reader["ProductName"].ToString();
merchantProduct.Qty = Convert.ToInt32(reader["Qty"]);
listLatestProduct.Add(merchantProduct);
}
return listLatestProduct;
第二,有人能告诉我在onrowdatabound中编码的正确方法吗?
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//Tried many code here but none is working
}
谢谢。
答案 0 :(得分:1)
首先,您需要在ur db中为ReadStatus(1/0)添加一列, 然后make在你的aspx页面中作为隐藏字段。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
// searching through the rows
if (e.Row.RowType == DataControlRowType.DataRow)
{
int reading = Convert.ToInt32(((HiddenField)e.Row.FindControl("readStatusHiddenField")).Value);
if (reading == 0)
{
e.Row.BackColor = Color.LightGray;
e.Row.Font.Bold = true;
}
}
}
在你的网格rowdataboun中,只需粘贴此代码。它适用于我
var app = angular.module('app', [])
app.controller("ctrl", function ($scope, $http) {
$scope.files = [];
var promise = $http.get("link1")
.then(function (response) {
console.log(response);
$scope.getfiles = response.data;
return $http.get('link2', {
params: {
id: response.data[0].Id
}
})
})
.then(function (response2) {
console.log(response2);
$scope.files = response2.data;
return response2.data;
})
})