private void btnQuery_Click(object sender, EventArgs e) { QueryForm queryForm = new QueryForm(); DialogResult result = queryForm.ShowDialog(); if (result == DialogResult.OK) { if (queryForm.Condition == "" || queryForm.Condition == null) { orderBindingSource.DataSource = os.orders; } else { string condition = queryForm.Condition; switch (queryForm.SelectedType) { case 0: { selectedOrders.Clear(); Order ret = os.InquireByID(Convert.ToInt32(condition)); if (ret != null) { selectedOrders.Add(ret); } break; } case 1: { List <Order> retList = os.InquireByCustomer(condition); if (retList == null) { selectedOrders.Clear(); } else { selectedOrders = retList; } break; } case 2: { List <Order> retList = os.InquireByCommodity(condition); if (retList == null) { selectedOrders.Clear(); } else { selectedOrders = retList; } break; } } orderBindingSource.DataSource = selectedOrders; } RefreshDataGridViews(); } }