我有很多个CheckedBOX,能不能帮忙精简代码啊????下面仅显示其中的2个复选框.前台ASPX代码:金额:<asp:checkbox id="SHOW_MONEY" runat="server" Checked="true" AutoPostBack="true"></asp:checkbox>首款金额<asp:checkbox id="SHOW_HEAD_MONEY" runat="server" Checked="true" AutoPostBack="true"></asp:checkbox>protected System.Web.UI.WebControls.CheckBox SHOW_MONEY;
protected System.Web.UI.WebControls.CheckBox SHOW_HEAD_MONEY;
public void SHOW_MONEY_CheckedChanged(object sender, System.EventArgs e)
{
if (SHOW_MONEY.Checked)
{SALES.Columns[11].Visible = true;}
else
{SALES.Columns[11].Visible = false;}
}
public void SHOW_HEAD_MONEY_CheckedChanged(object sender, System.EventArgs e)
{
if (SHOW_HEAD_MONEY.Checked)
{SALES.Columns[12].Visible = true;}
else
{SALES.Columns[12].Visible = false;}
}
private void InitializeComponent()
{    

this.SHOW_MONEY.CheckedChanged += new System.EventHandler(this.SHOW_MONEY_CheckedChanged);
this.SHOW_HEAD_MONEY.CheckedChanged += new System.EventHandler(this.SHOW_HEAD_MONEY_CheckedChanged); }

解决方案 »

  1.   

    专门做一个CheckBoxEx控件,把CheckedChange事件在那个控件中实现
      

  2.   

    this.SHOW_MONEY.CheckedChanged += new System.EventHandler(this.SHOW_MONEY_CheckedChanged);
    this.SHOW_HEAD_MONEY.CheckedChanged += new System.EventHandler(this.SHOW_MONEY_CheckedChanged);public void SHOW_MONEY_CheckedChanged(object sender, System.EventArgs e)
    {                           CheckBox cb = (CheckBox)sender;
                               int index = 12;
                               if( cb.ID == "SHOW_MONEY" ) index = 11;
    if (SHOW_MONEY.Checked)
    {SALES.Columns[index ].Visible = true;}
    else
    {SALES.Columns[index ].Visible = false;}
    }
      

  3.   

    就是就是,用checkboxlist就足够了...
    根据每个commandname,触发相应的事件就可以.
      

  4.   

    checkboxlist怎么做,有没有类似的代码???
      

  5.   

    和checkbox差不了多少的,你看一下.net framework 中关于checkboxlist 就明白了,很简单的
      

  6.   

    如果有多个checkbox,那用checkboxlist.
    还有楼主可以说一下想实现的功能,可能可以用另一种方法呢.