我在combox
中有两个datagrid
。一个组合是主要类别,其他组合是子类别。
我认为当我选择主类别时,在组合子类别中,我只会看到我选择的主类别的子类别。
我该怎么办?
public partial class Form4 : System.Windows.Forms.Form
{
SqlConnection con = new SqlConnection(@"Data Source=DEV6-PC; Initial
Catalog=Tak_Net;Integrated Security=True;");
DataTable dt = new DataTable();
DataTable dt1 = new DataTable();
public Form4()
{
InitializeComponent();
}
private void Form4_Load(object sender, EventArgs e)
{
dataGridView1.DataSource = loadData().Tables[0];
addCombo();
addCombo2();
}
private DataSet loadData()
{
con.Open();
SqlDataAdapter adapter = new SqlDataAdapter();
SqlCommand cmd;
DataSet ds = new DataSet();
//DataSet ds1 = new DataSet();
//SELECT STMTS
string Final = "SELECT Counter,DATE,V_BizName,Cost,PaymentCost,Notes
FROM dbo.Final_Cat_Global ";
string P_Cat = "SELECT distinct Cat FROM dbo.P_Cat";
string P_SubCat = "SELECT SubCat FROM dbo.P_Cat where
isnull(SubCat,'')<>''";
//Final TABLE
cmd = new SqlCommand(Final, con);
adapter.SelectCommand = cmd;
adapter.Fill(ds, "Final");
//P_Cat TABLE
adapter.SelectCommand.CommandText = P_Cat;
adapter.Fill(ds, "P_Cat");
//P_SubCat TABLE
adapter.SelectCommand.CommandText = P_SubCat;
adapter.Fill(ds, "P_SubCat");
dt = ds.Tables[1];
dt1 = ds.Tables[2];
return ds;
}
//COMBO COLUMN
public void addCombo()
{
//ADD COLUMNS
DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
combo.HeaderText = "P_Cat";
combo.Name = "combo";
ArrayList row = new ArrayList();
//FILL ARRAYLIST FROM DATATABLE
foreach (DataRow dr in dt.Rows)
{
row.Add(dr["Cat"].ToString());
}
//ADD TO COMBO
combo.Items.AddRange(row.ToArray());
//ADD THE COMBO TO DATAGRIDVIEW
dataGridView1.Columns.Add(combo);
}
//COMBO COLUMN
public void addCombo2()
{
//ADD COLUMNS
DataGridViewComboBoxColumn combo = new DataGridViewComboBoxColumn();
combo.HeaderText = "P_SubCat";
combo.Name = "combo1";
ArrayList row = new ArrayList();
//FILL ARRAYLIST FROM DATATABLE
foreach (DataRow dr in dt1.Rows)
{
row.Add(dr["SubCat"].ToString());
}
//ADD TO COMBO
combo.Items.AddRange(row.ToArray());
//ADD THE COMBO TO DATAGRIDVIEW
dataGridView1.Columns.Add(combo);
}
}
我尝试在主猫组合上捕捉所选项目,但我没有成功。 有人可以帮我吗?