'adding/removing objects to a list in vb.net

i have a list of objects called gobletinv that i want to add and remove objects from right now to add a new object I've just done this

       gobletinv(gobletpointer).mainstattype = MST.Text
            gobletinv(gobletpointer).mainstatvalue = MSV.Text
            gobletinv(gobletpointer).substat1type = ST1.Text
            gobletinv(gobletpointer).substat1value = SV1.Text
            gobletinv(gobletpointer).substat2type = ST2.Text
            gobletinv(gobletpointer).substat2value = SV2.Text
            gobletinv(gobletpointer).substat3type = ST3.Text
            gobletinv(gobletpointer).substat3value = SV3.Text
            gobletinv(gobletpointer).substat4type = ST4.Text
            gobletinv(gobletpointer).substat4value = SV4.Text
            gobletpointer += 1

i currently have no idea how i would remove an object from this list



Solution 1:[1]

Let's assume that the type your collection holds is called Stat. Let's also assume that gobletpointer is an Integer with an initial value of 0.

Each line where you are referencing the collection, you start it off with:

gobletinv(gobletpointer)

What this does is get the item from the collection at a given index.

So right now when you set the various property values to their respective TextBox value, you are overwriting the existing item in the collection.

If you wanted to add a new item to the collection, you would use the Add method (documentation). For example:

gobletinv.Add(New Stat() With {
    mainstattype = MST.Text,
    mainstatvalue = MSV.Text
    substat1type = ST1.Text,
    substat1value = SV1.Text,
    substat2type = ST2.Text,
    substat2value = SV2.Text,
    substat3type = ST3.Text,
    substat3value = SV3.Text,
    substat4type = ST4.Text,
    substat4value = SV4.Text
})

Now if you wanted to remove the object from the collection, it depends on how you want to remove it. But here is an example of leveraging the RemoveAt method (documentation) to remove the first record from the collection:

gobletinv.RemoveAt(0)

Update: This is a fiddle demonstrating how to add/remove items to the collection. https://dotnetfiddle.net/c0W6yS

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1