データソースが SqlDataReader オブジェクトにバインドされている DataGrid があります。
SqlDataReader areader = runner.Reader;
dgSearchResults.DataSource = areader;
dgSearchResults.DataBind();
グリッドの ItemDataBound イベントを作成しました。各項目がバインドされている間に特定の列/セルの値をチェックして、いくつかのフラグを有効/無効にできるようにしたいと考えています。
ItemDataBound で特定のセル "SvcID" の値を取得するにはどうすればよいですか?
これが私のコードです:
public void dgSearchResults_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (ViewState["SvcIDs"] != null)
{
if (e.Item != null)
{
var svcIds = (List<int>) ViewState["SvcIDs"];
if (svcIds.Contains(Convert.ToInt32(**DataGrid SvcID Goes Here**))
{
//TODO: enable/disable some icons
}
}
}
}
以前は RowDataBound イベントを使用していましたが、DataGrid コントロールには使用していませんでした。必要な手順は少し異なっているようです。
SvcIds (インデックスを使用) リストに対して DataGrid の列 "SvcID" の値をチェックするコードは何ですか?
ありがとう