0

コンボ ボックス (ドロップダウン) をグリッドビューの 2 番目の列として使用しており、コードに示すように SELECT クエリを使用して入力しています。グリッドビューの最初の列はテキスト ファイルの列ヘッダーで、2 番目の列 (コンボ ボックス) はテーブルの列の値を表示するため、ユーザーはマッピングを行うことができます。

以下のコードを変更して、ユーザーがドロップダウン リストから値を選択した場合、その値は既にマップされているため、他のドロップダウン リストに表示されないようにするにはどうすればよいですか? 前もって感謝します!

public void GV(DataTable table)
{
    dataGridView1.DataSource = table.DefaultView.ToTable(false, "ColumnName");
    DataGridViewComboBoxColumn cmb = new DataGridViewComboBoxColumn();
    SqlConnection conn = new SqlConnection ("server=dev;database=Test;Trusted_Connection=True");
    conn.Open();
    string query = "SELECT Column_Name FROM information_schema.columns WHERE TABLE_NAME = 'CM' ";

    SqlCommand cmd = new SqlCommand(query, conn);

    DataTable t1 = new DataTable();
    using (SqlDataAdapter a = new SqlDataAdapter(cmd))
    {
        a.Fill(t1);
    }

    cmb.DataSource = t1;
    cmb.ValueMember = "Customer";
    dataGridView1.Columns.Add(cmb);
}
4

0 に答える 0