OleDbCommand的connection何时关闭?
刚刚做了一个主细表,就是别左边用户列表,右边显示该用户的资料,并可以修改,删除等常规操作,刚刚发现一个问题, 
 在填充左侧LISTBOX时,while   OleDbDataReader.reload后就将OleDbDataReader释放掉了,这时候没有释放OleDbCommand的connection属性, 
 问题出来了,如果关闭该窗口,再次打开,提示我“连接未关闭。连接的当前状态为已打开。”,因为没有释放它, 
 但是我在窗口的private   void   user_close(object   sender,   FormClosingEventArgs   e)函数中却讯问不到OleDbCommand的connection?也就是说,无法OnClose时关闭connection,这可怎么办呀, 
 我在何时应该关闭它~   
 我现在的做法是,填充完LISTBOX后,关闭READER,关闭CONN 
 在listBox1_SelectedIndexChanged事件后, 
 重新建立READER和CONN,填充用户详细资料,之后再关闭READER,CONN 
 就是说,每次SelectedIndexChanged都会建立READER和CONN,用户没事儿点着看看就会产生无数次的“建立READER和CONN”,,,汗。     
 我感觉这样做法不是不科学不合理,而是很不科学很不合理,求高手指导,
------解决方案--------------------conn.Open(); 
 string sql= "select leave,count(*) from HYuser group by leave "; 
 SqlCommand co=new SqlCommand(sql,conn); 
 SqlDataReader re=co.ExecuteReader(); 
 while(re.Read()) 
  { 
  comboBox1.Items.Add(re.GetString(0)); 
 	} 
 conn.Close(); 
 co.Dispose(); 
 re.Close();