0

私は2つのデータグリッドビューコンボボックス列と、データグリッドビューに2つのテキストボックス列を持っています。各コンボボックス列は、個別のバインディングソースにバインドされています。

列名は sl_no、col_empname、col_empworktype、Col_Hours などであり、displaymember、datapropertyname、valuemember であり、comboxcolumn の場合は

col_empname:-emp_name,emp_id,emp_id

col_empworktype:-worktypename,worktypeid,worktypeid

私の問題は

  1. データをグリッドビューにバインドすると、余分な列 emp_id が表示されます(画像 1)
  2. コンボボックス列を選択すると、その列インデックスが変更されます
  3. コンボックス列を選択すると、エラー datagridview ' Datagridviewcombobox の値が無効です!' が表示されます。

ここに画像の説明を入力

フォームの読み込みで、datapropertyname を指定しました

Dim employeecolumn As DataGridViewComboBoxColumn = CType(grdWorkStatus.Columns("Col_EmpName"), DataGridViewComboBoxColumn) 
employeecolumn.DisplayMember = "emp_name" 
employeecolumn.ValueMember = "emp_Id" 
employeecolumn.DataPropertyName = "emp_Id" 
employeecolumn.DataSource = EmployeeSource 

この問題はすべて、データベースから grdiview (grdiview データの更新) にデータをバインドする場合にのみ発生します。それ以外の場合は、保存できます。すべてが正常に機能しています。

前もって感謝します。

4

1 に答える 1

0

データ テーブルを にバインドすると、データ テーブルのDataGridViewすべての列がバインドされるため、データ テーブルに emp_id がある場合は、DataGridView.

emp_iddataGridView に列を作成し、列を使用DataPropertyNameemp_idて id 列を非表示にする必要がある場合があります。

于 2012-05-16T07:00:50.780 に答える