Hallo,
das entscheidende Problem für Dein Ziel ist, dass der DbDataReader nur einen "einmaligen" Lesezugriff und nur das Vorwärts-Navigieren ermöglicht. In Deiner Situation ist es wohl sinnvoller, eine
DataTable zu verwenden und die Daten per
DbDataAdapter.Fill einzulesen. Je nach den verwendeten Controls und Code-Teilen kannst Du dann direkt in DataTable.Rows navigieren oder eine
BindingSource zwischen DataTable und TextBox o.a. setzen.
Zur Einführung in diesem Zusammenhang siehe z.B.
OpenBook Visual C# Kap.25 ff. Du musst lediglich die dort benutzten Sql-Klassen durch Deine
OleDb-Klassen ersetzen und Parameter mit '?' (statt mit '@' und Namen) benutzen; aber im übrigen sollte es keine Abweichungen geben.
Besser ist, DbConnections in
using-Blöcke einzubinden; siehe dazu
[Artikel] Datenbanken richtig öffnen und schließen.
Gruß Jürgen