Autor Beitrag
armakedon5
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 10:37 
Hallo,

brauche eure Hilfe. In der DataGridView Tabelle sind Daten wie(nachname, vorname usw), wie kann Inhalt der ersten zellen in der jeweiligen Textboxen anzeigen, d.h gleich nach dem Starten sollen erste zeilen in der txt.. stehen.
dieser kod ist dafür, wenn man die zellen markiert und die Inhalt steht dann in der txtfelder:
ausblenden C#-Quelltext
1:
2:
3:
4:
   if (e.ColumnIndex == 1)
            {
                txtPersonenName.Text = GridViewPersonen[nachname, e.RowIndex].Value.ToString();
                txtPersonenVorname.Text = GridViewPersonen[vorname, e.RowIndex].Value.ToString();



dankeee

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
Peter Bär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17
Erhaltene Danke: 1



BeitragVerfasst: Di 07.06.11 11:44 
Hallo

Eigentlich musst Du nur das machen, was Du geschrieben hast.
Also das DataGridView mit einer foreach-Schleife durchlaufen und die Zellwerte in die entsprechenden Textbox's einfügen.
Sollte eigentlich nicht so schwierig sein, sonst habe ich dich falsch verstanden.
armakedon5 Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 11:52 
danke für Atwort. Bin noch am lernen, kann nicht so gut mit schleifen umgehen, bitte um ein beispiel

danke
Peter Bär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17
Erhaltene Danke: 1



BeitragVerfasst: Di 07.06.11 13:56 
Also Mein Vorschlag:

ausblenden C#-Beispielcode
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
// Textboxvariable setzen
String tb = "";

foreach (DataGridViewRow dr in DeinDataGridView.Rows)
{
    // Textboxname setzen
    tb = dr.Cells[int SpaltemitTextboxname].ToString();

    // Text einfügen
    tb.Text = dr.Cells[int SpaltemitgewünschtemText].ToString();
}


Die Textboxnamen musst Du entweder aus dem gleichen DataGridView einfügen oder von einem anderen Speichermedium (z.B DataSet etc.), die Du gleichzeitig durchlaufen kannst. Die Textboxbezeichnungen musst Du auf jedem Fall irgendwo speichern, damit Du mit einer Schleife die Zellwerte verteilen kannst.

Oder:

Die Textboxbezeichnungen setzt Du als Int-Werte, dann kannst Du mit einem Counter (i++) während des Durchlaufs die Textboxnamen automatisch erzeugen.
armakedon5 Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 14:44 
vielen Dank für Atnwort, habe probiert, hat nicht funktioniert
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
 foreach (DataGridViewRow dr in DataGridView.Rows)
 {

txt_Str.Text = DataGridView[str, dr.RowIndex].Value.ToString();. 

}


SCHREIB IN DIE TXT diesen Text: DataGridViewTextBoxCell { ColumnIndex=0, RowIndex=3 }

Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
Peter Bär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17
Erhaltene Danke: 1



BeitragVerfasst: Di 07.06.11 14:55 
Da hat es ziemlich viele Fehler:

foreach (DataGridViewRow dr in ?.Rows) // ? dein DataGridViewName
{
txt_Str.Text = ??[???].Value.ToString(); // ?? muss dr sein (Objekt der foreach-Schleife) / ??? Integerwert der Spalte (von 0 beginnend)
}

Ansonsten sollte es funktionieren, wenn (txt_Str) einer Textbox entspricht.
armakedon5 Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 14:59 
Hallo,

DataGridViewName so heisst der DataGrid


txt_Strasse.Text = dr.Cells[0].ToString();



user profile iconPeter Bär hat folgendes geschrieben Zum zitierten Posting springen:
Da hat es ziemlich viele Fehler:

foreach (DataGridViewRow dr in ?.Rows) // ? dein DataGridViewName
{
txt_Str.Text = ??[???].Value.ToString(); // ?? muss dr sein (Objekt der foreach-Schleife) / ??? Integerwert der Spalte (von 0 beginnend)
}

Ansonsten sollte es funktionieren, wenn (txt_Str) einer Textbox entspricht.
Peter Bär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17
Erhaltene Danke: 1



BeitragVerfasst: Di 07.06.11 15:08 
Du weisst nicht wie dein DataGridView benannt ist?

Meines heisst z.B. dataGridView1 :wink:

Steht sonst in den Eigenschaften des DataGridView unter Entwurf(Name) :o
armakedon5 Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 15:11 
habe den GridView selbst so benannt. DataGridxxxxxx jeder DataGridname entspricht die Methode

habe mehrere Grids
Peter Bär
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17
Erhaltene Danke: 1



BeitragVerfasst: Di 07.06.11 15:15 
Sorry, ich verstehe Dein Problem nicht und kann Dir leider nicht mehr weiterhelfen.
armakedon5 Threadstarter
Hält's aus hier
Beiträge: 11



BeitragVerfasst: Di 07.06.11 15:17 
Hallo,

es ist fast ja richtig, nun schreibt falschen Text auf texbox, nicht das was in der Tabelle ist

foreach (DataGridViewRow dr in GridViewAdressen.Rows)
{
// Textboxname setzen
strasse = dr.Cells[1].ToString();

// Text einfügen
txt_Strasse.Text = dr.Cells[0].ToString();

hier ist etwas faul

trotzdem Danke
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Di 07.06.11 17:57 
Hallo,

bitte ändere den Titel des Topics, da er wenig über das eigentlich Thema verrät. Hier der entsprechende Absatz aus den Richtlinien:

1.2 Beiträge:
Bitte formuliere den Betreff Deiner Beiträge so, dass andere Mitglieder anhand dieser bereits das eigentliche Thema festmachen können. Beiträge wie etwa "Eine Anfängerfrage" oder "Weiß jemand, wie das geht?" lassen den Leser im Unklaren darüber, was das Thema der Diskussion ist.[...]


Einfach oben bei Deinem ersten Beitrag auf user defined image oder user defined image klicken und den Titel ändern. Danke Dir!

Viele Grüße,
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".