2016-07-28 12 views
0

i2 Frage ... 1. i eine Gridview, das eine Datenform-Datenbank binden, diewie Wert der ausgewählten Zeile in DropDown und Tabellenansicht erhalten

Weise
DataSource = Company.GetAllCompany(); 
     dgvCompanys.AutoGenerateColumns = false; 
     dgvCompanys.DataSource = _DataSource; 

     dgvcolNameEn.DataPropertyName = "MyEnglishName"; 
     dgvcolAddress.DataPropertyName = "MyAddress"; 
     dgvcolCode.DataPropertyName = "MyCode"; 
     dgvcolKeyId.DataPropertyName = "MyKeyId"; 

will es jetzt gearbeitet hat i bekommen die Schlüssel-ID der ausgewählten Zeile

private void dgvCompanys_SelectionChanged(object sender, EventArgs e) 
    { 

     if (dgvCompanys.SelectedRows.Count > 0) 
     { 
     mtxtCode.Text=dgvCompanys.SelectedRows[0].Cells[1].Value.ToString(); 
     } 
    } 

diesem Code haben diesen Fehler Object reference not set to an instance of an object. , was ich dafür zu tun? Frage 2.i haben textboxdropdownlist (devComponent) und bezogen auf diese Weise:

List<Company> _DataCompany; 
_DataCompany = Company.GetAllCompany(); 
     cmbCompany.DisplayMember = "MyEnglishName"; 
     cmbCompany.DataSource = _DataCompany; 

, die korrekt gearbeitet, aber ich möchte keyId der Zeilen in Drop-Down jetzt ausgewählt bekommen, was ich zu tun?

Antwort

0

Frage 1: vielleicht Dataset hat nur eine Spalte, so dass der richtige Code ist:

dgvCompanys.SelectedRows[0].Cells[0].Value.ToString(); 

Frage 2 für mich nicht klar ist, aber Sie können mit dem ausgewählten Elemente zuzugreifen:

DropDown.SelectedItem.ToString() 
+0

q1.still es Error-> Objektreferenz nicht auf eine Instanz eines Objekts festgelegt. q2.i zeigt den Feldnamen an, möchte aber Id Feld – sadeq

+0

q1 erhalten. Wenn Cell.value [0] null ist, löst die Operation ToString() eine Ausnahme aus, vielleicht ^^ q2. testeest du SelectedValue oder SelectedText Eigenschaften? – mdelpeix