Mam kilka obrazów, które dodałem ręcznie do imageList Cotrol. Teraz potrzebuję usunąć obrazy thart z imageList w zależności od indeksu klucza i ustawić jako panel tła.Jak używać kontrolki imageList
jak mam zrobić to
Mam kilka obrazów, które dodałem ręcznie do imageList Cotrol. Teraz potrzebuję usunąć obrazy thart z imageList w zależności od indeksu klucza i ustawić jako panel tła.Jak używać kontrolki imageList
jak mam zrobić to
Images
, że dodaje się lista obrazów są dodawane do ImageList.ImageCollection, więc jest to zbiór wpisać można użyć większości metod gromadzenia .
Użyj właściwości Obrazy, aby dodać, usunąć i uzyskać dostęp do obrazu, który ma być wyświetlany w tle panelu. Add(key,image)
Remove()
RemoveAt()
RemoveByKey()
Sprawdź przykład w dokumentacji ImageList Class do zrozumienia, że jak pragmatycznie korzystać ze wszystkich tych metod.
dodać zdjęcie:
imageList1.Images.Add("pic1", Image.FromFile("c:\\mypic.jpg"));
Usuń obraz z kolekcji:
imageList1.Images.RemoveAt(listBox1.SelectedIndex);
imageList1.Images..RemoveByKey("pic1");
dostęp do obrazów, uzyskać obraz z imagecollection
panel1.BackgroundImage = imageList1.Images[0];
lub
panel1.BackgroundImage = imageList1.Images["pic1"];
Próbuję użyć panel1.BackgroundImage = imageList1.Images [0]; ale obraz nie jest wyświetlany prawidłowo, czy muszę użyć innej metody wzdłuż tej? –
Sprawdź właściwość panelu "BackgroundImageLayout" dla ustawień widoku obrazu. Lista obrazów może przechowywać obraz maksymalnie 256x256 pikseli. –
dziękuję, działa świetnie –
Użyj Images
property kontroli ImageList
.
Obiekt, który zwraca, zawiera wszystkie metody potrzebne do manipulowania obrazami na liście, w tym metody Add
i Remove
.
można znaleźć instrukcje dotyczące ustawiania tła w Panel
kontrolą tutaj: How to: Set the Background of a Windows Forms Panel
Próbuję użyć tej metody, ale zwraca void imageList1.Images.RemoveByKey ("nameOfImage") –
Tak, ma zwrócić 'void'. To jest sygnatura metody. Zobacz dokumentację (http://msdn.microsoft.com/en-us/library/system.windows.forms.imagelist.imagecollection.removebykey.aspx). Nie zwraca sukcesu ani porażki. –
Używam imagelist w widoku listy.
Powiedzmy, że mam trzy obrazy w imagelist i chcę usunąć 2 obraz w nim.
użyłem kodu
imagelist.Images.RemoveAt(2);
kod usuwa 2nd obraz ale po tym 3 obraz jest bot widoczne chociaż jest tam
mój prob lem jest imagelist nie jest automatyczne odświeżanie – neerajMAX
chcesz usunąć niektóre obrazy oparte na indeksie i dodać im tyłek tło twój panel? – Moonlight
Tak, masz rację –