如:有10个CheckBox控件,在CheckBox1~10中的CheckStateChanged事件中只有一个 changeStatus = false;
怎么简化代码?谢谢
看到C++有这样的实现,不知道C#如何实现//   The   code   fragment   below   shows   how   to   use   ON_COMMAND_RANGE   macro   
  //   to   map   a   contiguous   range   of   command   IDs   to   a   single   message     
  //   handler   function   (i.e.   OnFileMenuItems()   is   the   sample   below).   In     
  //   addition,   it   also   shows   how   to   use   CheckMenuRadioItem()   to   check   a     
  //   selected   menu   item   and   makes   it   a   radio   item.   
  BEGIN_MESSAGE_MAP(CMainFrame,   CFrameWnd)   
        //{{AFX_MSG_MAP(CMainFrame)   
        //   ...     
        //}}AFX_MSG_MAP   
        ON_COMMAND_RANGE(ID_FILE_MENUITEM1,   ID_FILE_MENUITEM3,   OnFileMenuItems)   
  END_MESSAGE_MAP()   
    
  void   CMainFrame::OnFileMenuItems(UINT   nID)   
  {   
        CMenu*   mmenu   =   GetMenu();   
        CMenu*   submenu   =   mmenu->GetSubMenu(0);   
        submenu->CheckMenuRadioItem(ID_FILE_MENUITEM1,   ID_FILE_MENUITEM3,     
              nID,   MF_BYCOMMAND);   
  }

解决方案 »

  1.   

    选中这10个checkbox,然后查看属性,双击CheckStateChanged事件,估计就可以了
      

  2.   

    写一个函数public void ChangeStatu()
    {
      changeStatus  = false;
    }然后每个控件的事件页面的CheckStateChanged都填上ChangeStatu
      

  3.   

    CheckBox1.CheckStateChanged+=new System.EventHandler(CheckedChanged);
    CheckBox2.CheckStateChanged+=new System.EventHandler(CheckedChanged);
    ……
    CheckBoxN.CheckStateChanged+=new System.EventHandler(CheckedChanged);
      

  4.   

    选中控件-->右键->属性->事件->CheckStateChanged-> 都写一个就可以了
    不过我好象没有见过 CheckStateChanged 这个事件啊!