对于定义数据结构的VB.NET类,我是相对较新的。这个术语也有点陌生。
我定义了以下类结构:
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?
发布于 2021-08-05 22:05:22
当您想要定义自定义类的属性时,您要做的是在类中定义类。更多地类似于:
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然后,当您去设置属性时,它将是:
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 = "..."
}
}另外,注意我是如何删除您的自定义Date和Size类的。这是因为这些类已经分别存在于System和System.Drawing名称空间中。
https://stackoverflow.com/questions/68673882
复制相似问题