我有一个获取数据源的 GridView。现在在 RowDataBound 上,我需要对行单元格进行一些更改,但我需要外部信息来确定发生了什么更改。
static void GridRowDataBoundProbables(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.Header)
{
foreach (TableCell cell in e.Row.Cells)
{
if (!int.TryParse(cell.Text, out postNum)) continue;
cell.CssClass += " postCell";
cell.Add(new Panel { CssClass = (**isHarness** ? PostHarness : PostThoroughbred) + postNum });
cell.Add(new Label { Text = postNum.ToString() });
}
}
}
我需要 isHarness bool,它在我创建和绑定网格时可用。此外,由于网格是在静态 WebMethod 调用期间创建的,因此我无法在页面上将其设为全局。
如何将 isHarness 的值获取到此函数中?我以为我可以创建自己的继承自 GridViewRowEventArgs 的 EventArgs,但我仍然不知道如何在我的新 args 中实际获取 bool ...
编辑
isHarness 是在创建 DataSource 时确定的布尔值,但不是 DataSource 的一部分
下面是外部调用的模拟:
[WebMethod]
public static AjaxReturnObject GetProbables(string token, string track, string race, string pool)
{
Tote tote = new Tote(...);
GridView grid = new GridView();
grid.RowDataBound += GridRowDataBound;
grid.DataSource = tote.GetDataSource(); //isHarness is available during creation of DataSource
//Here tote.isHarness is available from property
grid.DataBind();
}