1

studentHelperを開始するSELECTために呼び出されたクラスのメソッドを使用して、リスト ボックスにテーブル データを表示しようとしています。テーブルはperson、列はpersonID

これは私の学生ヘルパークラスです

class studentHelperClass
{

  /// <summary>
  /// The SELECT method for the student
  /// </summary>
  public static void selectStudent()
  {
      MySqlConnection conn = connection();
      conn.Open();
      MySqlCommand cmd = new MySqlCommand();
      cmd.Connection = conn;
      MySqlDataAdapter adap = new MySqlDataAdapter(@"SELECT * FROM person", conn);
      MySqlCommandBuilder sqlCmd = new MySqlCommandBuilder(adap);
      DataSet sqlSet = new DataSet();
      adap.Fill(sqlSet, "personID");
      conn.Close();
  }

これが私のフォームです:

private void btnLoadListBox_Click(object sender, EventArgs e)
 {
     studentHelperClass.selectStudent();
 }

うまくいきません、何が間違っていますか?

4

1 に答える 1

0

ヘルパー メソッドselectStudent()がデータを返さないか、UI にデータを表示しません。それは DataSet を満たすだけです。

selectStudent以下のようにデータセットを返すことができます

   public static DataSet selectStudent()
    {
        MySqlConnection conn = connection();
        conn.Open();
        MySqlCommand cmd = new MySqlCommand();
        cmd.Connection = conn;
        MySqlDataAdapter adap = new MySqlDataAdapter(@"SELECT * FROM person", conn);
        MySqlCommandBuilder sqlCmd = new MySqlCommandBuilder(adap);
        DataSet sqlSet = new DataSet();
        adap.Fill(sqlSet, "personID");
        conn.Close();
        return sqlSet;
    }

ボタンクリックイベントでは、以下DataSourceListBoxように設定します。また、設定する必要がありDisplayMemberます DisplayMember

private void btnLoadListBox_Click(object sender, EventArgs e)
{
    DataSet ds = studentHelperClass.selectStudent();
    lsbxTable.DataSource = ds.Tables["personID"];
    lsbxTable.DisplayMember = "Name";
    lsbxTable.ValueMember = "ID";
}
于 2013-09-11T03:49:56.023 に答える