Autor Beitrag
Neggi
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Do 23.04.15 12:03 
Hallo,

ich hab folgendes Problem:

es soll mir durch eine Combobox eine Anzahl an Übungen, die sich in einer Access Tabelle befinden, ausgewählt werden und in ein DataGridview geschrieben werden. Das funktioniert mit dem Code darunter... nun will ich aber dass er nicht immer nur zum beispiel die ersten drei nimmt, sondern random drei aus der tabelle. Mit folgendem Code wählt er mir die Übungen aus, angefangen bei der ersten Reihe und nicht random:


ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
int anzahl = Convert.ToInt32(comboBox1.Text);

                 {string[] datensatz = new string[anzahl];
                for (int i = 0; i < anzahl; i++)
                {
                    datensatz[i] = dt.Rows[i][0].ToString();
                }
                dataGridView1.DataSource = datensatz;
                 }



Danke für die Hilfe im Vorhinein...

Liebe Grüße
Palladin007
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1282
Erhaltene Danke: 182

Windows 11 x64 Pro
C# (Visual Studio Preview)
BeitragVerfasst: Do 23.04.15 12:30 
Vorweg:

Access ist keine Datenbank, alles, wenn Du Daten in Datenbank-Format haben willst, dann verwende irgendein sinnvolles Datenbank-System.
Du kannst dir ja mal MsSQL, MySQL, der SQLite anschauen. Letzteres ist nur eine Datei.


Wir du eine zufällige Zeile bekommst:

ausblenden SQL-Anweisung
1:
2:
3:
SELECT TOP 1 *
FROM tabelle
ORDER BY NEWID()
Ralf Jansen
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 4700
Erhaltene Danke: 991


VS2010 Pro, VS2012 Pro, VS2013 Pro, VS2015 Pro, Delphi 7 Pro
BeitragVerfasst: Do 23.04.15 12:53 
Die dortige Lösung gilt immer noch

www.entwickler-ecke....ewtopic.php?t=114208
Neggi Threadstarter
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Do 23.04.15 13:05 
Hallo noch einmal...sorry dass ich so lästig bin.

Ich würde gerne die dataTable die in dem ersten Datagridview angezeigt wird in einer anderen(random) Reihenfolge in dem zweiten Datagridview anzeigen. (siehe Anhang)
So wird die erste Datatable angezeigt.

ausblenden C#-Quelltext
1:
2:
3:
4:
OleDbDataAdapter da = new OleDbDataAdapter(command);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;

Danke

Moderiert von user profile iconTh69: Quote- durch C#-Tags ersetzt
Einloggen, um Attachments anzusehen!
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 23.04.15 13:21 
Wenn du eine Liste zufällig sortieren willst, dann benutze am besten den Fisher-Yates Shuffle, s. z.B. Fisher-Yates shuffle oder Shuffle.
Also lege eine Kopie deiner Liste (oder DataTable) an und sortiere dann die einzelnen Werte (bzw. Zeilen).

Aber da dir user profile iconRalf Jansen in dem anderen Thema schon eine Lösung gepostet hat, schließe ich diesen.
Dieses Thema ist gesperrt, Du kannst keine Beiträge editieren oder beantworten.

Das Thema wurde von einem Team-Mitglied geschlossen. Wenn du mit der Schließung des Themas nicht einverstanden bist, kontaktiere bitte das Team.