Autor Beitrag
jery19
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 27.04.10 11:03 
Hi brauch unbedingt eure Hilfe also ich hab ein Datagrid und der wird mittels einem Dataset aus einer Access Datenbank befüllt und nun möchte das wenn man eine Zeile im Datagrid markiert und dann den button drückt das er alle Daten in der zeile in einerm array speichert also er soll in der gleichen zeile bleiben aber in die nächste spalte durchlaufen und das was dort drin steht auch in den array speichern. also in der spalte FullName in der 3 Reihe steht tomas diese wird von mir markiert und mit dem Button bestätigt nun soll er alles was in FullName und in den nächsten Spalten drin steht in den Array speichern (aber nur die 3 Reihe der Spalten). ich hab 6 spalten Bitte brauch und bedingt hilfe
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Di 27.04.10 11:16 
Hallo und :welcome:,

meinst du mit DataGrid eine DataGridView? Ich nehme an du meinst das DataGridView aus dem Windows.Forms Namespace. Leider ist dein Text sehr durcheinander, aber ich versuche trotzdem dir eine hilfreiche Antwort zu geben. Bitte versuche in Zukunft strukturierte Text zu schreiben. Dazu gehört a) genaue Benennung deiner Komponenten b) einen Text den man auch lesen kann und c) eine genaue Problembeschreibung woran es happert.

Du könntest einfach ein Array erstellen und die markierten Werte dort reinkopieren:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
string[] values = new string[dataGridView1.SelectedCells.Count];

for (int i = 0; i < dgv.SelectedCells.Count; i++)
{
    values[i] = dgv.SelectedCells[i].Value.ToString();
}


wenn du nicht die markierten Zellen haben willst, sondern single select auf eine row hast und die Werte ab der dritten Spalte haben willst:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
            DataGridViewRow row = dgv.SelectedRows[0];
            string[] values = new string[row.Cells.Count -3];
            for (int i = 3; i < row.Cells.Count; i++)
            {
                values[i] = row.Cells[i].Value.ToString();
            }


Falls ich falsch liege, bitte ich dich nochmal zu beschreiben was dein Problem ist.

Gruß
jery19 Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 27.04.10 11:29 
hey danielf erstmal vielen dank für die schnelle Antwort bin ganz durcheinander und daher mein komplizierter Text.

hab deinen Code ausprobiert er speichert zwar etwas rein nur hatte ich gemeint das wenn man die ERSTE ZEILE DER ERSTEN SPALTE markiert und dann auf den button klickt dann soll er das was drin steht speichern und das was in der ersten reihe der zweite spalte drin steht das was in der ersten reihe der dritten spalte drin steht usw bis zur sechsten Spalte auch wenn nichts drin steht soll er das in den array speichern bislang speichert er immer nur ein feld .
Vegeto
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 262



BeitragVerfasst: Do 06.09.12 09:33 
Hallo ich weiß bisschen spät aber wollte danielf was fragen...

Ich habe diese Anweisung von dir benutzt:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
                    string[] values = new string[dataGridView1.SelectedCells.Count];

                    for (int i = 0; i < dataGridView1.SelectedCells.Count; i++)
                    {
                        values[i] = dataGridView1.SelectedCells[i].Value.ToString();
                    }

Doch irgendwie funktoniert das nicht bei mir.
So jetzt wollte ich deine Anweisung benutzen, weiß aber nicht wie ich das realisieren soll :(
Und bei mir soll nur jeweils eine Splate(die ID Spalte),vom jeweils ausgewähltem Datensatz/Zeile in dem Array abgelegt werden. Die ID Spalte befindet sich bei dem dataGridView auf der Position 1, da 0 die checkbox Column ist.

Lg

EDIT: SCHON ERLEDIGT :)