首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用VB.NET访问A类中的数据

如何用VB.NET访问A类中的数据
EN

Stack Overflow用户
提问于 2021-08-05 21:52:18
回答 1查看 50关注 0票数 1

对于定义数据结构的VB.NET类,我是相对较新的。这个术语也有点陌生。

我定义了以下类结构:

代码语言:javascript
复制
Public Class CatalogInfoDef
    Public CatalogName As String
    Public CatalogYear As String
    Public CatalogNumber As String
End Class

Public Class ParameterDef
    Public Country As String
    Public GeographicArea As String
    Public Catalogs As List(Of CatalogInfoDef)
    Public Class IssueDate
        Public Month As String
        Public Day As String
        Public Year As String
    End Class
    Public Class Size
        Public Width As String
        Public Height As String
    End Class
    Public Printer As String
    Public SearchKeywords As List(Of String)
    Public Class OtherInfo
       Public Condition As String
       Public PrintMethod As String
    End Class
End Class

在主要形式中,我有一个定义:Private ParameterInfo as New ParameterDef

我能够将数据插入到主类、国家等的字段中。但是,我在将数据插入到诸如: IssueDate (月、日、年)等字段时遇到了问题。

如何访问这些类字段中的数据?我错过了什么参数吗?是否有更好的方法来定义ParameterDef?

EN

回答 1

Stack Overflow用户

发布于 2021-08-05 22:05:22

当您想要定义自定义类的属性时,您要做的是在类中定义类。更多地类似于:

代码语言:javascript
复制
Public Class ParameterDef
    Public Property Country As String
    Public Property GeographicArea As String
    Public Property Catalogs As List(Of CatalogInfoDef)
    Public Property IssueDate As DateTime
    Public Property Size As Size
    Public Property Printer As String
    Public Property SearchKeywords As List(Of String)
    Public Property OtherInfo As OtherInfo
End Class

Public Class OtherInfo
   Public Condition As String
   Public PrintMethod As String
End Class

然后,当您去设置属性时,它将是:

代码语言:javascript
复制
Private ParameterInfo as New ParameterDef() With {
    .Country = "...",
    .GeographicArea = "..."
    .Catalogs = New CatalogInfoDef() With {
        .CatalogName = "...",
        .CatalogYear = "...",
        .CatalogNumber = "..."
    },
    .IssueDate = New DateTime(year, month, day) ' replace with actual values
    .Size = New Size(width, height) ' replace with actual values
    .Printer = "...",
    .SearchKeywords = New List(Of String)(),
    .OtherInfo = New OtherInfo() With {
        .Condition = "...",
        .PrintMethod = "..."
    }
}

另外,注意我是如何删除您的自定义DateSize类的。这是因为这些类已经分别存在于SystemSystem.Drawing名称空间中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68673882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档