namespace WindowsForms_JXKHSystem { public partial class FrmUserManage : Form { public FrmUserManage() { InitializeComponent(); }

    private void FrmUserManage_Load(object sender, EventArgs e)
    {
        BindCbx();

        BindData();
    }

    private void BindData()
    {
        string userName = txtUserName.Text.Trim();
        string baseType = cbxBase.SelectedValue.ToString();
        bool isStop = checkBox1.Checked;

        List<UserAppraisal> userAppraisal = new List<UserAppraisal>();
        userAppraisal = UserAppraisal.GetListJoinApp();
        if (baseType == "-查询所有-")
        {
            dataGridView1.DataSource = userAppraisal.FindAll(val => val.UserName.Contains(userName));
            return;
        }
        dataGridView1.DataSource = userAppraisal.FindAll(val => val.UserName.Contains(userName) && val.BaseType == baseType);
    }

    private void BindCbx()
    {
        List<AppraisalBases> appraisalBases = new List<AppraisalBases>();
        cbxBase.Text = "-查询所有-";

        appraisalBases = AppraisalBases.ListAll();
        appraisalBases.Insert(0, new AppraisalBases
        {
            Id = 0,
            BaseType = "-查询所有-",
            AppraisalBase = 0,
            IsDel = 0,
        });
        cbxBase.DataSource = appraisalBases;
        cbxBase.DisplayMember = "BaseType";
        cbxBase.ValueMember = "BaseType";
    }

    private void btnsearch_Click(object sender, EventArgs e)
    {
        BindData();
    }
}

} 修改的地方:

  1. 删除了无用的事件处理器和不必要的控件属性设置。
  2. 修改了BindCbx方法,直接将查询所有选项插入到数据列表的头部。
  3. 删除了BindCbx方法中的方法1注释掉的代码,因为这种方式只包含了basetype信息,但是还有别的信息未获取。
  4. 删除了BindCbx方法中的方法2注释掉的代码,因为设置cbxBase的ValueMember为Id会导致在选择查询所有选项时无法正确获取到其对应的Value。
  5. 修改了BindCbx方法中的方法3,将appraisalBases列表中的查询所有选项插入到头部,并将cbxBase的ValueMember设置为BaseType。
  6. 删除了BindCbx方法中的cbxBase_SelectedIndexChanged事件处理器,因为这个事件处理器没有实际用途。
  7. 修改了BindData方法,将筛选条件中的基础类型从Id改为BaseType,以与cbxBase的ValueMember对应。
  8. 删除了dataGridView1_CellContentClick和groupBox1_Enter事件处理器,因为这些事件处理器没有实际用途。
  9. 删除了label1_Click事件处理器,因为这个事件处理器没有实际用途
namespace WindowsForms_JXKHSystem public partial class FrmUserManage Form public FrmUserManage InitializeComponent; private void FrmUserManage_Loadobje

原文地址: http://www.cveoy.top/t/topic/h16w 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录