我现在的情况是这样的.当DataGridView划定一个区域的选择的时候. DataGridView刷新的时候.把之前的选择全部刷新没了..我不知道怎么样记录DataGridView的选择区域.等刷新之后再赋值回去.重新填充之前的选择.
用一个变量保存上一次选择区域,需要保存所划定区域矩形的四个角所在的单元格或坐标。这样就能恢复显示上一次所选择区域了。
你的是web吗。
绑定datagridview的时候。
this.gvProduct.DataKeyNames = new string[] { "F_GoodsName", "F_SuppliersGoodsGUID", "F_Count", "F_GUID", "F_TypeName" };
this.gvProduct.DataSource = goodsInfos;
this.gvProduct.DataBind();
private void refreshViewState()
{
Dictionary<int, decimal> dict = (Dictionary<int, decimal>)ViewState["products"];
foreach (GridViewRow row in this.gvVoucher.Rows)
{
KeyValuePair<int, decimal> item = dict.ElementAt<KeyValuePair<int, decimal>>(row.DataItemIndex);
TextBox tbx = (TextBox)row.Cells[6].FindControl("txtCount");
decimal result = 0m;
if (Decimal.TryParse(tbx.Text, out result))
{
dict[item.Key] = result;
}
}
}
删除之前记录一次。