C# 分组全选 出现未将对象引用设置到对象的实例

vivianqing 2012-10-11 01:05:56
请各位大侠帮忙处理一下:groupvalue = view_selected.GetFocusedDataRow().Field<object>(groupname).ToString();
出现出现未将对象引用设置到对象的实例
代码如下所示:
//全选
void tb_select_Click(object sender, EventArgs e)
{

string groupname = null;
string groupvalue = null;
DevExpress.XtraGrid.Views.Grid.GridView view_selected = (DevExpress.XtraGrid.Views.Grid.GridView)Grid.FocusedView;
if (view_selected == null) return;
DataRow selectedrow = view_selected.GetFocusedDataRow();
if (selectedrow == null) return;
selected = !selected;
DevExpress.XtraGrid.Columns.GridColumnReadOnlyCollection cols = view_selected.GroupedColumns;
if (cols.Count > 0)
{
groupname = cols[0].FieldName;


if (!string.IsNullOrEmpty(groupname))
{



groupvalue = view_selected.GetFocusedDataRow().Field<object>(groupname).ToString();


}


}
#region 是否包含chk列
bool hasChk = false;
foreach (DevExpress.XtraGrid.Columns.GridColumn col in view_selected.Columns)
{
if (col.FieldName.ToLower() == "chk") { hasChk = true; }
}
if (!hasChk) return;
#endregion
for (int i = 0; i < view_selected.RowCount; i++)
{
DataRow row = view_selected.GetDataRow(view_selected.GetVisibleRowHandle(i));
if (row == null) continue;
if (string.IsNullOrEmpty(groupname))
{
row.SetField<int>("chk", selected ? 1 : 0); //全选
}
else
{
string gvalue = "";
gvalue= row.Field<object>(groupname).ToString();
//分组全选
if (gvalue == groupvalue)
{
row.SetField<int>("chk", selected ? 1 : 0);
}
}
}

}
...全文
88 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧