Indexované prvky ve Form   zodpovězená otázka

VB.NET

Zdravím,

ve VB6 bylo možné prvky ve formuláři indexovat, například mít 10 checkboxů a ve smyčce je přepínat atd. Jednoduše se toto pole vytvořilo kopírováním prvků, VB6 se zeptala při kopírování prvního, zda má vytvořit pole a bylo to.

V .NETu tato vlastnost není, nezná někdo nějakou elegantní náhradu ? Jde mi hlavně o hromadnou manipulaci s PictureBoxem

Jirka

nahlásit spamnahlásit spam 0 odpovědětodpovědět

To už tady několikrát bylo. Možností je několik - hledejte PictureBoxy podle jména (Me.Controls(klíč)), nebo (pokud chcete použít cyklus For Each) si je dejte do Panelu a procházejte prostě kolekci Controls u Panelu. Nezapomeňte přetypovávat. Dále můžete taky použít takovýto dotaz:

For Each c As PictureBox In From c2 As Control In Me.Controls Where TypeOf c2 Is PictureBox Select DirectCast(c2, PictureBox)

Next

Tato konstrukce vyfiltruje ze všech ovládacích prvůk pouze PictureBoxy.

Ovšem to neklapne pod Frameworkem nižším než 3.5.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tak toto som hladal. Práca s prvkami podľa názvu. Dík, vyriešilo to dosť mojích problémov.

Do formu 5 labelov a 1 button

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim i As Byte
For i = 1 To 5
    Me.Controls("Label" & i).Text = "Popisek " & i
Next

End Sub
nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tohle by vám mohlo pomoct:

http://www.vbnet.cz/snippet--41-prace_s_...

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Díky, fungují obě metody ....

J.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback