Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Index på kontroller

Postades av 2007-05-27 13:30:04 - Pontus Kjellberg, i forum vb.net, Tråden har 11 Kommentarer och lästs av 1843 personer

I VB6 brukade jag använda index på ex. en label eller textbox.

lblTest(1) lblTest(2) o.s.v.

Detta var bra om man hade många likande kontroller i en rad eller column
och ville enkelt komma åt en av dom.

I en annan kod kunde man då skriva

lblTest(x)...... för att ändra just den labeln eller textboxen.

Finns inte den möjligheten i vb.net?
Antar dom gjort det på annat sätt. Någon som kan tipsa om hur.

/Pontus


Svara

Sv: Index på kontroller

Postades av 2007-05-27 13:34:40 - Thomas Vanhaniemi

Nä, du har helt rätt i att index inte finns längre i VB.NET.
Hur du ska göra beror på omständigheterna. Du kommer lätt åt alla kontroller som är placerade i en annan kontroll genom .Controls listan, till exempel Form1.Controls.

För att gå igenom alla kontroller som finns i Form1
<code>
For Each ctrl As Control In Form1.Controls
MsgBox(ctrl.Id)
Next
</code>
Har skrivit koden från huvudet men det borde fungera...

Men om du beskriver närmare var du vill göra så kan man ge ett bättre svar.


Svara

Sv:Index på kontroller

Postades av 2007-05-27 13:49:00 - Pontus Kjellberg

Hej!

Jag kommer ha flera rader (troligen åtta) med labels
och ungefär sex kolumner. Vill inte använda en datagrid även om det kanske
skulle fungera också.

Sen vill jag på ett enkelt sätt ändra i några rader. T.ex. flytta hela den ena raden
med data upp eller ned och således påverkas alla de andra raderna likadant.

Hade väl varit hyffsat enkelt med hjälp av index 1-2 2-3 o.s.v.

Ska kolla på ditt tips med at ha kontrollerna i en annan kontroll såsom en groupbox.

Tack så länge.


Svara

Sv: Index på kontroller

Postades av 2007-05-27 14:02:13 - Oskar Johansson

Låter som listview eller något..?


Svara

Sv: Index på kontroller

Postades av 2007-05-28 08:28:44 - Dan Therkildsen

Hej,
här är en funktion som jag använder :

    Function SökKontroll(ByVal strId As String, ByVal ctlRoot As Control) As Control

        Dim ctlFound As Control
        Dim ctlTemp As Control

        For Each ctlTemp In ctlRoot.Controls
            If ctlTemp.Name.ToUpper = strId.ToUpper Then
                Return ctlTemp
            End If

            ctlFound = SökKontroll(strId, ctlTemp)
            If Not ctlFound Is Nothing Then
                Return ctlFound
            End If
        Next
        Return Nothing

    End Function


Med den kan du döpa dina kontroller till t.ex. Label1, Label2 osv.,
och sedan anropa i en loop :
    For intSnurra As Integer = 1 To 4
         SökKontroll("Label" & intSnurra, pnlRoot).Text = "Testtext"
    Next



Svara

Sv:Index på kontroller

Postades av 2007-05-28 18:15:44 - Pontus Kjellberg

Hej Dan!

Tack för tips, det fungerar bra.

/Pontus


Svara

Sv:Index på kontroller

Postades av 2007-06-06 13:40:12 - Johan Claesson

Har du något exempel på vad som skall skickas in i pnlRoot/ctlRoot?


Svara

Sv: Index på kontroller

Postades av 2007-06-06 13:43:12 - Pontus Kjellberg

Johan!
Vet inte om du ställer frågan till mig men i.s.f. är det bara vanlig text.
/Pontus


Svara

Sv:Index på kontroller

Postades av 2007-06-06 13:52:39 - Johan Claesson

Jag är kanske lite trög så här på Sveriges dag, men jag är inte helt med.
I exemplet skall man uppdatera texten på Label1-Label4. Det är väl inte "Label" som är parametern.


Svara

Sv: Index på kontroller

Postades av 2007-06-06 14:00:15 - Pontus Kjellberg

Som exempel.
Jag har ett antal Label som finns i en panel.

Dessa Label heter för enkelhetens skull bara Label1, Label2, Label3 o.s.v.
Panelen kallar jag pnlRoot.

Här blir texten i Label1 till "Sverige".
SökKontroll("Label" & 1, pnlRoot).Text = "Sverige"

Här ändrar jag texten i Label3 till "Johan".
SökKontroll("Label" & 3, pnlRoot).Text = "Johan"

Hade hellre använt label(1), label(3) o.s.v. men det fungerar visst inte i VB.NET.
Fast ovan tips jag fått fungerar också bra.

Hoppas det klarnade något.

Pontus


Svara

Sv:Index på kontroller

Postades av 2007-06-06 14:26:55 - Johan Claesson

Jag placerade mina textboxar direkt på formuläret så jag förstod inte att det var en Panel också inblandad. Tack för hjälpen!


Svara

Sv: Index på kontroller

Postades av 2007-06-06 14:29:35 - Pontus Kjellberg

Tror nog du kan nog använda bara en form också. Alltså slippa
lägga textboxarna i en panel.

/Pontus


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 725
27 958
271 751
382
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies