Indexermittlung

15/04/2008 - 00:23 von ludwig Königbauer | Report spam
Hallo,
ich habe aus einer Textdate zwei Spalten eingelesen und aus visuellen
Gründen die zweite Spalte an eine zweite ListBox gebunden.
Eigentlicher Sinn des Ganzen soll sein, den Index der Spalte 2 zur
Weiterverarbeitung an eine Methode weiter zu reichen.
jetzt bekomme ich beim Debuggen die Meldung zur dritten Zeile in der
listBox1_SelectedIndexChanged: 'die angegebene Umwandlung ist ungültig'.
ich habe es dann noch mit der zweiten Zeile probiert,es kommt aber dieselbe
Meldung;
was mache ich falsch, bzw. wie komme ich an den richtigen Index der Zeile ?

private DataTable dt ;
private void Form1_Load(object sender, EventArgs e)
{string con=...
using (OleDbConnection connection = new OleDbConnection(con))
{
connection.Open();
string query = "Select ort,plz FROM Ausgab.txt";
OleDbDataAdapter adapter = new OleDbDataAdapter(query,
connection);
dt = new DataTable();

adapter.Fill(dt);
//listBox anbinden
listBox1.DataSource = dt; listBox1.DisplayMember = "ort";
listBox2.DataSource = dt; listBox2.DisplayMember = "plz";
connection.Close();
}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs
e)
{
//int r = listBox1.SelectedIndex;
int r = ((ListBox)sender).SelectedIndex;
int idx = (int)dt.Rows[r]["ort"];
}

Grüße
Ludwig
 

Lesen sie die antworten

#1 Roman Käppeler
15/04/2008 - 21:02 | Warnen spam
ludwig Königbauer schrieb:

[...]
listBox1_SelectedIndexChanged: 'die angegebene Umwandlung ist ungültig'.
ich habe es dann noch mit der zweiten Zeile probiert,es kommt aber dieselbe
Meldung;
was mache ich falsch, bzw. wie komme ich an den richtigen Index der Zeile ?

[...]
private void listBox1_SelectedIndexChanged(object sender, EventArgs
e)
{
//int r = listBox1.SelectedIndex;
int r = ((ListBox)sender).SelectedIndex;
int idx = (int)dt.Rows[r]["ort"];
}



Hallo Ludwig,

Du könntest mal int idx = Int32.Parse(...) an der Stelle versuchen.
Notfalls auch zunàchst ein .ToString() und das Ergebnis in
Int32.Parse(...) übergeben.

Ähnliche fragen