Pracuję nad aplikacją C#, która zawiera wiele DataGridViews, które są puste. Użytkownik musi wypełnić je kopią/wklejonymi danymi z programu Excel. Co zrobić, jest następujący:Zamówienie Datagridview.SelectedCells
int i = 0;
string s = Clipboard.GetText();
// Separate lines
string[] lines = Regex.Split(s, "\r\n");
foreach (string line in lines)
{
// Separate each cell
string[] cells = line.Split('\t');
foreach (string cell in cells)
{
// If we selected as many cells as copied
if (dataGridView.SelectedCells.Count == (lines.Length-1)*(cells.Length))
{
dataGridView.SelectedCells[i].Value = cell;
i++;
}
}
}
Problem polega na tym, że jeśli skopiować coś takiego (w Excel):
1 2 3
4 5 6
Moje DataGridView będzie wyglądać następująco:
6 4 2
5 3 1
I nie wiem, co zrobić, aby to naprawić ... Z góry dziękuję
Czy istnieje możliwość utworzenia datatable z tablicą komórek i powiązania danych z datagridem? – ray
@RayMoonDay Nie wiem, czy to dobre rozwiązanie, biorąc pod uwagę, że mam 50 dynamicznie generowanych sieci, tak naprawdę nie używam pamięci, więc nie wiem, czy jest tak wielka, czy nie. I tak mam zamiar to zrobić, dziękuję. – Blowi
Dlaczego potrzebujesz dynamicznie generowanych 50 pustych siatek? Jeśli jednak możesz po prostu wydrukować zmienną "s", która jest kopią schowka, możesz uzyskać informację, czy t jest zgodne z twoimi danymi wyjściowymi, czy z prawdziwym rekordem danych Excela – ray