class PM_MainManager
    {
        /// <summary>   
        /// 查看正题名  
        /// </summary> 
        public DataSet SelectInTitle()
        {
            string Sqlstr = "select title from PM_Main";
            return SQLHelper.ExecuteDs(Sqlstr);     
        }
        /// <summary>   
        /// 查看所属节目 
        /// </summary> 
        public DataSet SelectInTopProgID()
        {
            string Sqlstr = "select topProgID from PM_Main";
            return SQLHelper.ExecuteDs(Sqlstr);
        }    }
--------------------------------------------------------- private void button1_Click(object sender, EventArgs e)
 {
            PM_MainManager pm = new PM_MainManager();
            if (checkBox1.Checked)
            {
                DataSet d1 = pm.SelectInTitle();
                this.dgv_Prog.DataSource = d1.Tables[0];//绑定到DateGridView
            }
            if (checkBox2.Checked)
            {
               DataSet d2 = pm.SelectInTopProgID();
               this.dgv_Prog.DataSource = d2.Tables[0];
            }
}
--------------------------------------------------
现在界面上有2个CheckBox,点中一个显示绑定后的数据内容,但是我想要的效果是 2个CheckBox都选中的情况下 title 和 topProgID 的数据内容都能够在GridView中同时显示,这要怎么做啊?是要改Sql语句还是什么

解决方案 »

  1.   

    你点其中一个的时候判断一下令一个是否为true就好了。
      

  2.   

    2个checkbox的选择事件指向同一个事件
    在事件里判断 checkbox1.checked ==true  && checkbox2.checked ==true 
    成功 执行 你需要显示的东西的代码
      

  3.   

    你DataGridView中用模板列设置好ID和Title列,一开始就加载所有数据,并且此时DataGridView控件的Visible属性为false,然后当你的CheckBox1被勾选时,让DataGridView显示,并且Title列显示,ID列隐藏,CheckBox2被选中的话,让ID列显示,总共四种情况你自己设置下。
      

  4.   

      if (checkBox1.Checked && checkBox2.Checked)
      {
      string Sqlstr = "select topProgID,title from PM_Main";
      this.dgv_Prog.DataSource = SQLHelper.ExecuteDs(Sqlstr).Tables[0];
      }
      else if (checkBox1.Checked)
      {
      DataSet d1 = pm.SelectInTitle();
      this.dgv_Prog.DataSource = d1.Tables[0];//绑定到DateGridView
      }
      else if (checkBox2.Checked)
      {
      DataSet d2 = pm.SelectInTopProgID();
      this.dgv_Prog.DataSource = d2.Tables[0];
      }