Jak dodac cos do listview'a ale do okreslonej kolumny:
//listView_main.Items.Add(matches_links[i].ToString());
taki kod dodaje ale do pierwszej kolumny w listview.
Jak dodac cos do listview'a ale do okreslonej kolumny:
//listView_main.Items.Add(matches_links[i].ToString());
taki kod dodaje ale do pierwszej kolumny w listview.
Kolejne kolumny to subitemy. Tutaj drugą kolumnę zwróci ci metoda Add albo możesz potworzyć je ręcznie i dodać w konstruktorze.
Oto przykład dla 3 kolumnowego listview
ListViewItem item = new ListViewItem(KOLUMNA1);
item.SubItems.Add(KOLUMNA2);
item.SubItems.Add(KOLUMNA3);
listView1.Items.Add(item);
raczej do jednej kolumny da się dodać tylko w taki sposób , że pozostałe zostawiamy puste.
Ok, dodawanie do kolumn dziala super, teraz jak edytowac poszczegolne itemy w listviewie
void Edit_items()
{
for (int i = 0; i < listView_main.Items.Count; i++)
{
listView_main.Items[i].ToString().Remove(1, 35);
}
for (int i = 0; i < listView_temp.Items.Count; i++)
{
listView_temp.Items[i].ToString().Replace("kot", "dom");
listView_temp.Items[i].ToString().Remove(0, 1);
listView_temp.Items[i].ToString().Remove(listView_temp.Items[i].ToString().Length - 1, 1);
}
}
taki kod niestety nie edytuje itemow ;/
Niestety nie mam możliwości sprawdzenia tego, ale proponowałbym zrobić coś takiego (powtarzam nie wiem czy zadziała)
ListViewItem item = new ListViewItem(dane[i,1]);
item.SubItems.Add(dane[i, 2]);
item.SubItems.Add(dane[i, 3]);
listView1.Items.Add(item);
ListViewItem item = listView1.Items[0];
// teraz powiedzmy, że chcemy w 2 zamienić tekst
item.SubItems[1] = "bla bla bla";
//i spowrotem dodajemy
listView1.Items[0] = item;
// nie wiem jak z usuwaniem ale może zadziała tak samo jak w przypadku listView czyli
// listView1.Remove(listView1.Items[0]);
item.Remove(item.SubItems[1]);
niestety nie mam możliwości sprawdzenia ale możliwe, że tak zadziała, też nie wiem czy możemy do sub item odwołać się przez np. SubItems[1]
Jesli dobrze to odczytalem to niestety nie dziala. Nie chodzi mi o usuwanie calych itemow ani o zmienianie ich calkowicie, tak jak w moim przykladzie chodzi mi o usuwanie kilku znakow na poczatku i koncu (.Remove)
ok problem z edycja itemow w pierwszej kolumnie rozwiazany
void Edit_items()
{
for (int i = 0; i < listView_main.Items.Count; i++)
{
listView_main.Items[i].Text = listView_main.Items[i].Text.Remove(0,listView_main.Items[i].Text.LastIndexOf("/"));
listView_main.Items[i].Text = listView_main.Items[i].Text.Remove(0, 1);
listView_main.Items[i].Text = listView_main.Items[i].Text.Remove(listView_main.Items[i].Text.Length - 1, 1);
}
for (int i = 0; i < listView_temp.Items.Count; i++)
{
listView_temp.Items[i].Text = listView_temp.Items[i].Text.Replace("kot", "dom");
listView_temp.Items[i].Text = listView_temp.Items[i].Text.Remove(0, 1);
listView_temp.Items[i].Text = listView_temp.Items[i].Text.Remove(listView_temp.Items[i].Text.ToString().Length - 1, 1);
}
}
Pozostaje problem z taka sama edycja ale w nastepnych kolumnach w listview'ie ;/ nie wiem jak sie do nich odniesc
Gdybyś przejrzał chociaż dostępne właściwości ListViewItem w Intellisense to zobaczyłbyś, że każdy item ma właściwość SubItems. A wcześniej nie działało ci dlatego, że (chociaż to już pewnie wiesz) metody String zwracają nową kopię.