Location mit String

  • VB.NET

Es gibt 33 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Ok soweit gut,

    aber

    VB.NET-Quellcode

    1. Public Sub New()
    2. InitializeComponent()
    3. For Each bt In {Button10}
    4. _Buttons.Add(bt)
    5. Next
    6. ListBox1.DataSource = _Buttons
    7. ListBox1.DisplayMember = "Name"
    8. End Sub

    Hier zeigt er keinen Namen in Listbox1 an.
    Es ist zwar ein Eintrag vorhanden aber leer, warum?

    ErfinderDesRades schrieb:

    ach, und was soll das?
    .Text = text.ToString
    Welchen Datentyp hat text? Was bezweckst du damit, dass du dem ein .ToString anhängst?


    Text hatte ich für den Inhalt des Buttons. Ich hatte es ohne .ToString da ging es nicht, habe es gerade nochmal ausprobiert jetzt klappts auch ohne.

    Wegen deinem Code:
    Das er nichts angezeigt hatte war auch schon vorher nur es klappte ja zu Test zwecken weil man ja etwas anklicken konnte.
    Ich wollte jetzt nur nachfragen warum er das nicht tut, weil ich zuvor selbst mal probiert habe was aber nichts geworden ist.
    hmm - ich hatte gefragt, welchen Datentyp text hat - (übrigens nicht: Text). Wirklich geantwortet hast du nicht, aber ich hoffe mal, du weißt die Antwort.

    Aber jetzt guck ich nochmal nach dem Code in Post#7 - hätteste mir auch früher sagen können, dass der gar nicht funktioniert.

    Edit:
    Jo, stimmt - weiß ich auch nicht, warum die Name-Property nicht anzeigt. Also kleine Änderung:

    VB.NET-Quellcode

    1. ListBox1.DisplayMember = "Text"
    die Name-Property ist sowieso Müll, und sollte niemals für gar nix verwendet werden.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()

    Prima, dann kann man ja jetzt wie folgt vereinfachen:

    VB.NET-Quellcode

    1. Private Sub new_button(ByVal text As String)
    2. Dim myButton As New Button With {.Text = text, .Bounds = New Rectangle(50, 50, 100, 80)}
    3. Me.Controls.Add(myButton)
    4. _Buttons.Add(myButton)
    5. End Sub
    Das ist das wichtigste, nach dem du dein Coden ausrichten solltest: Sieh zu, dasser kurz ist, einfach zu lesen, und keinen unnötigen Müll enthält (wie überflüssige Leerzeilen oder Kommentare, die nichts erklären).
    Jo - aber nicht unbedingt bis zum Ende warten - bei größeren Sachen kann das Jahre dauern.

    Du kannst funktionierende Abschnitte auch im SourceCode-Austausch posten. Zerpflücke ich dir gerne nach Strich und Faden, weil ich glaub, als Autor kann man einiges lernen, wenn man dieselbe Funktionalität in ganz anderem Gewand wieder-sieht.
    Kannste grad gucken, wie ich heute einen Form-Code geschrumpft habe: Windows Explorer schließen
    Ich kann ja nicht in der Listbox nach Items suchen wegen dem DataSource oder?
    Weil dieser Code funktioniert nicht mit der Listbox1 also mit der DataSource verbunden ist.

    VB.NET-Quellcode

    1. For i As Integer = 0 To ListBox1.Items.Count - 1 ' Alle Items durchgehen...
    2. If ListBox1.Items.Item(i).ToString = "name2" Then ' Falls Eintrag vorhanden...
    3. ListBox1.SetSelected(i, True) ' ...Zeile markieren...
    4. MsgBox(i) ' ...und Msgbox ausgeben
    5. End If
    6. Next

    Kann man das ändern?
    ja - eiglich kein Problem, nur ich sehe, dass du post#17 - Visual Studio - Empfohlene Einstellungen nicht umsetzst.

    Ich mache mir grad zum Prinzip, Leuten, die unbedingt vb.net unter Beibehaltung der "Deppen-Einstellungen" nutzen wollen - nicht mehr zu helfen.
    Weil jede Zeile Code, die man unter den Deppen-Einstellungen hinzufügt, verfestigt die schlechten Gewohnheiten. Also eine Hilfe schadet diesen Leuten letztendlich.

    Bring deine Einstellungen in Ordnung, du wirst einige oder gar viele Fehler kriegen, die aufzeigen, wieviel Mist dir bereits unterlaufen ist.
    Korrigiere die Fehler, bzw. poste die, beim Korrigieren helfe ich gerne.
    Also Option Strict hatte ich bereits auf ON.
    Nur den Verweis nicht entfernt.
    Es gibt nur 3 Fehler wovon einer ca. 10x das ist.
    • MsgBox
    • MsgBoxStyle
    • Vbnewline

    Und zwar seien diese Objekte nicht Deklariert.
    Was muss ich jetzt tun? D=

    ErfinderDesRades schrieb:

    Korrigiere die Fehler, bzw. poste die, beim Korrigieren helfe ich gerne.
    ist das iwie schwer zu verstehen?
    achso - vlt. weißt du nicht, was unter "Fehler posten" zu verstehen ist: Fehler posten.
    Dort ist gelistet, was alles zu einer beantwortbaren Frage gehört - In diesem Falle fehlen die Code-Zeilen - müssen nicht alle 10 sein, wenns 10 mal derselbe Fehler ist.
    Brauchst du jetzt das hier?

    Fehler 1 "MsgBox" wurde nicht deklariert. Auf das Objekt kann aufgrund seiner Schutzstufe möglicherweise nicht zugegriffen werden. C:\Users\Rico_2\Desktop\Ticket.dll Beispiele NEU\Multi ClientPanamon GUI\Multi ClientPanamon GUI\Form1.vb 52 21 Multi ClientPanamon GUI

    VB.NET-Quellcode

    1. Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    2. For i As Integer = 0 To ListBox1.Items.Count - 1 ' Alle Items durchgehen...
    3. If ListBox1.Items.Item(i).ToString = "user_59" Then ' Falls Eintrag vorhanden...
    4. ListBox1.SetSelected(i, True) ' ...Zeile markieren...
    5. msgbox(i) ' ...und Msgbox ausgeben
    6. End If
    7. Next
    8. End Sub

    Jetzt sind es Code-Zeilen.
    Und ​msgbox(i) hat den Fehler.
    Die anderen Fehler war Code den ich nicht mehr brauche habe jetzt mal alles aufgeräumt.
    Nur noch dieser Fehler.

    So richtig?

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „!!Coca!!“ ()