1. 程式人生 > >DEV設定只有在行列內點選才是有效點選

DEV設定只有在行列內點選才是有效點選

        /// <summary>         /// 設定只有在行列內點選才是有效點選         /// </summary>         /// <param name="sender"></param>         /// <param name="e"></param>         private void gcFymx_MouseClick(object sender, MouseEventArgs e)         {             try             {                 if (this.bsFymx.Count > 0)                 {

                    DataRow dr = ((DataRowView)this.bsFymx.Current).Row;                     GridHitInfo HitInfo = this.gvFymx.CalcHitInfo(e.X, e.Y);                     if (e.Button == MouseButtons.Left)                     {                         if (HitInfo.Column == null)                         {                             return;                         }                         else if (HitInfo.Column.Name.ToString() != "gbCol_XZ" && HitInfo.InRow == false)                         {                             return;                         }                         else if (HitInfo.Column.Name.ToString() == "gbCol_XZ")                         {                             gcFymx_Click(sender, e);                         }                         else                         {                             return;                         }                     }

                }             }             catch (Exception ex)             {                 MessageProcess.ShowError(ex.Message);             }         }         /// <summary>         /// 設定選擇狀態         /// </summary>         /// <param name="sender"></param>         /// <param name="e"></param>         private void gcFymx_Click(object sender, EventArgs e)         {             if (this.bsFymx.Count > 0)             {

                DataRow dr = ((DataRowView)this.bsFymx.Current).Row;                 if (dr["SCBZ"].ToString() == "否")                 {                     //dr.BeginEdit();                     //dr["CHECKED"] = 1 - Convert.ToInt32(dr["CHECKED"]);                     //dr.EndEdit();                     foreach (DataRow drRow in dtFymx.Rows)                     {                         if (drRow["xh"].ToString() == dr["xh"].ToString() && drRow["SCBZ"].ToString() == "否")                         {                             drRow["CHECKED"] = 1 - Convert.ToInt32(drRow["CHECKED"]);                         }                     }

                    this.dtFymx.AcceptChanges();                 }             }         }