使用List(Of)时如何添加项目?

时间:2012-01-05 04:07:07

标签: vb.net

我创建了一个我声明了一些属性的类。

Public Class BlogPost

    Dim _postTitleUrl As String = String.Empty
    Dim _pageGUID As String = String.Empty


    Property postTitleUrl() As String
        Get
            Return _postTitleUrl
        End Get
        Set(ByVal value As String)
            _postTitleUrl = value
        End Set
    End Property
    Property pageGUID() As String
        Get
            Return _pageGUID
        End Get
        Set(ByVal value As String)
            _pageGUID = value
        End Set
    End Property
End Class

现在,我有另一个我想设置值的类。

Public Class SetBlogData

  Public blogPostList As New List(Of BlogPost)
  Public dataCounter as integer = 0

  blogPostList(dataCounter).pageGUID = mainBlogSPWeb.ID.ToString

...

这给我一个关于Index超出范围的错误。我可以在BlogPost类中正确访问属性吗?

3 个答案:

答案 0 :(得分:8)

因为你的清单什么都没有。

您应该使用add方法添加新项目。喜欢......

        Dim blogPostList = New List(Of BlogPost)
        Dim blogPost = New BlogPost
        blogPost.pageGUID = mainBlogSPWeb.ID.ToString
        blogPostList.Add(blogPost)

答案 1 :(得分:1)

您需要通过撰写BlogPost

在列表中添加blogPost.List.Add(New BlogPost())

答案 2 :(得分:1)

我发现这是插入列表的好方法:

1)检查列表是否为空

2)如果是,则实例化一个新列表

3)将值添加到列表中。

下面是一个例子。

Private Sub ExampleAddValueToList(ByVal value as BlogPost)
    Try
        If _blogPostList Is Nothing Then
            _blogPostList = New List(Of BlogPost)
        End If

        _blogPostList.Add(value)

    Catch ex As Exception
       debug.write(ex.message)
    End Try
End Sub