if(this._DataGrid.CurrentRowIndex>=0) this._DataGrid.UnSelect(this._DataGrid.CurrentRowIndex);
this._DataGrid.SetDataBinding(DataSource,"");
this._DataGrid.TableStyles.Clear();
DataGridTableStyle dgts=new DataGridTableStyle();
dgts.MappingName=MappingName;
foreach(DataGridColumnStyle cs in dgcs)
{
cs.NullText=AppString.cmndatagridNullText;
}
dgts.GridColumnStyles.AddRange(dgcs);
this._DataGrid.TableStyles.Add(dgts);
this._DataGrid.Refresh();
不管我怎么重新绑定,怎么设置被选中的行,这个错误就一定会出现,怎么绕过这个Bug呢?
this._DataGrid.SetDataBinding(DataSource,"");
this._DataGrid.TableStyles.Clear();
DataGridTableStyle dgts=new DataGridTableStyle();
dgts.MappingName=MappingName;
foreach(DataGridColumnStyle cs in dgcs)
{
cs.NullText=AppString.cmndatagridNullText;
}
dgts.GridColumnStyles.AddRange(dgcs);
this._DataGrid.TableStyles.Add(dgts);
this._DataGrid.Refresh();
不管我怎么重新绑定,怎么设置被选中的行,这个错误就一定会出现,怎么绕过这个Bug呢?
解决方案 »
- 关于Parse方法
- 向word文档写入数据的问题?有一点问题,谢谢指教...
- 一个asp.net的问题,请教高手
- 求使用RegularExpressionValidator限制文本框内容不能输入\/*:?"<>| 这几个字符的正则表达式
- 如何在web窗口中实现进度条?
- datagrid.ReadOnly=True,如何做到编辑datagrid中选中的某一行,其他行为只读
- Dataset1.xsd,没人知道吗?
- 求教C#下如何锁定屏幕?
- 高分求教,有百分相送!!!
- 有没有用来判断输入的是否为日期的函数,请教
- 我用OleDb方式Insert数据到Excel中,然后添加一行,然后再用OleDb方式Select读取数据,为什么新增的一行读不出来?
- datagrid绑定控件问题--新手困惑
我好象在for循环的里面就进行了Fill DataGrid
所以在删除的时候出现了这样的问题
try
{
//邦定;
}
catch
{
this.dg1.CurrentPageIndex--;
//邦定;
}
---------------------------
没有数据就没有当前行,所有首先判断有没数据,再执行你的代码!
this.sqlDataAdapter1.Fill(this.dataSet11.职员奖励表);
cmManage = (CurrencyManager) BindingContext[this.dataSet11,"职员奖励表"];
cmManage.Position = 0;
}
//------------------处理数据导航条和新增修改等事务---------------------
private void toolBar_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
if (e.Button.ToolTipText == "首记录")
{
cmManage.Position = 0;
return;
}
if (e.Button.ToolTipText == "上一记录")
{
if (cmManage.Position > 0)
cmManage.Position--;
return;
}
if (e.Button.ToolTipText == "下一记录")
{
if (cmManage.Position < cmManage.Count-1)
cmManage.Position++;
return;
}
if (e.Button.ToolTipText == "尾记录")
{
cmManage.Position = cmManage.Count-1;
return;
}
if (e.Button.ToolTipText == "新增记录")
{
cmManage.AddNew();
return;
}
if (e.Button.ToolTipText == "删除记录")
{
if (MessageBox.Show("确实要删除这条记录吗?","询问",MessageBoxButtons.YesNo) == DialogResult.Yes)
{
if (cmManage.Count > 0)
cmManage.RemoveAt(cmManage.Position);
else
{
MessageBox.Show("没有可以删除的数据","提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
return;
}
}
//参考