2017-04-05 14 views
0

データグラムビューにコンボボックスカラムを作成してデータベースから取り込みます。しかし、今私がしたいのは、選択したアイテムから実際のコード番号の値を取得して、通常のコンボボックスのように使用できるようにすることです。問題は、リストからアイテムを選択するたびに、コード番号の値の代わりにコード番号の値がある「コード」という列の名前が取得されることです。事前にカラム名ではなく、datagridviewのcomboboxから実際のコード番号の値を取得

private void Invoice_Load(object sender, EventArgs e) 
    { 
     Logic.Repair objRepair = new Logic.Repair(); 

     public DataGridViewComboBoxColumn dgvCB = new DataGridViewComboBoxColumn(); 

     dgvCB.Name = "Repair"; 
     dgvCB.HeaderText="Repair"; 
     dgvCB.DataSource = objRepair.AllRepairQuery(); 
     dgvCB.DisplayMember = "Repair"; 
     dgvCB.ValueMember = "Code"; //this is what I keep geting, the word "Code" 
        //what I want to get is the code number value not the column's name. 
     dgvRepair.Columns.Add(dgvCB); 
    } 

ありがとう:

私を助けてください、これは私のコードです。

編集

「AllRepairQuery」は、「修復SELECT * FROM」を使用してデータベースからデータテーブルを返すメソッドであり、それは、私は、次のコードを使用してそれを解決コード

+0

データソースが正しいかどうかをデバッグしましたか?コードのような音はそこにありません – EpicKip

+0

"AllRepairQuery"の戻り値の種類は何ですか? –

+0

"AllRepairQuery"は、 "select * from repair"を使用してデータベースからデータテーブルを返し、コードを含むすべてのフィールドを返すメソッドです –

答えて

0

を含むすべてのフィールドを返します:

int SelectedVal = Convert.ToInt32(dgvReparair.Rows[dgvRepair.CurrentCell.RowIndex].Cells["Repair"].Value); 
関連する問題