来帮我看一句死循环
不理解下面这句为何死循环? 
    private   void   myDataGridView1_CellValueChanged(object   sender,   DataGridViewCellEventArgs   e) 
                         { 
                                     MessageBox.Show(DateTime.Now.Date.ToString()); 
                                     this.myDataGridView1.Rows[e.RowIndex].Cells[15].Value   =   DateTime.Now.Date; 
                         }
------解决方案--------------------this.myDataGridView1.Rows[e.RowIndex].Cells[15].Value = DateTime.Now.Date; 
 这条语句会重新触发CellValueChanged事件,,,所以是死循环...
------解决方案--------------------这必然是死循环.而且是,在你触发changed事件以后开始的 
 this.myDataGridView1.Rows[e.RowIndex].Cells[15].Value = DateTime.Now.Date; 
 因为你有上面这句. 
 简单理解是:在你第一次触发changed事件后,首先输出一个弹出框.然后更改里面的值.这时候又触发了changed事件,如此反复死循环就开始了
------解决方案--------------------改变Cell的值触发CellValueChanged事件,CellValueChanged事件处理中又改变Cell的值 
 当然死循环~
------解决方案--------------------我的意思是 
 if (this.myDataGridView1.Rows[e.RowIndex].Cells[15].Value != DateTime.Now.Date) 
 { 
     this.myDataGridView1.Rows[e.RowIndex].Cells[15].Value = DateTime.Now.Date; 
 } 
 当条件不符合时,就不会执行赋值操作,也就不会再触发CellValueChanged事件了吧。   
 我没怎么用过.net,正在学习,不知道是不是正确!