none
关于SetCurrentCellAddressCore方法的异常处理 RRS feed

  • 问题

  • 我在一个窗体中使用了一个DataGridView,所有它的属性设置如下:

    this.dataGridView1.AllowUserToResizeColumns = false;
                this.dataGridView1.AllowUserToResizeRows = false;
                this.dataGridView1.CellBorderStyle = System.Windows.Forms.DataGridViewCellBorderStyle.None;
                this.dataGridView1.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.None;
                this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
                this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
                this.ID,
                this.Position,
                this.StartTime,
                this.LessWorkTime,
                this.SUserID,
                this.Content});
                this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
                this.dataGridView1.Location = new System.Drawing.Point(0, 0);
                this.dataGridView1.MultiSelect = false;
                this.dataGridView1.Name = "dataGridView1";
                this.dataGridView1.RowHeadersVisible = false;
                this.dataGridView1.RowTemplate.Height = 23;
                this.dataGridView1.ScrollBars = System.Windows.Forms.ScrollBars.None;
                this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
                this.dataGridView1.Size = new System.Drawing.Size(249, 217);
                this.dataGridView1.TabIndex = 0;

    问题出现了:该DataGridView对象在窗体初始化时给它绑定一个DataTable对象作为数据源,但是当我在程序中更改其数据源时(dataGridView1.DataSource=newtable;)时,它就抛出了这样的的异常:{操作无效,原因是它导致对 SetCurrentCellAddressCore 函数的可重入调用。}

    本人无法解决,特来求助!


    李东洋
    2012年1月5日 10:18

全部回复

  • 看錯誤說明如下,請Check看看!

    指定的儲存格具有 false 的 Visible 屬性值
    -或-
    呼叫這個方法的原因並不是因為正在重設基礎資料來源,而且目前另一個執行緒正在執行這個方法。

     


    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2012年1月5日 10:53
  • 是的,这个我可以理解;但是如果不知道是谁调用在什么时候或者是什么事件调用的,怎样来结束对它的调用,问题还是存在.


    李东洋
    2012年1月9日 8:37