📄 incometable.vb
字号:
End Property
Public Event IncomeTableRowChanged As IncomeTableRowChangeEventHandler
Public Event IncomeTableRowChanging As IncomeTableRowChangeEventHandler
Public Event IncomeTableRowDeleted As IncomeTableRowChangeEventHandler
Public Event IncomeTableRowDeleting As IncomeTableRowChangeEventHandler
Public Overloads Sub AddIncomeTableRow(ByVal row As IncomeTableRow)
Me.Rows.Add(row)
End Sub
Public Overloads Function AddIncomeTableRow(ByVal 金额 As String, ByVal 日期 As String, ByVal 项目名称 As String) As IncomeTableRow
Dim rowIncomeTableRow As IncomeTableRow = CType(Me.NewRow,IncomeTableRow)
rowIncomeTableRow.ItemArray = New Object() {金额, 日期, 项目名称}
Me.Rows.Add(rowIncomeTableRow)
Return rowIncomeTableRow
End Function
Public Function GetEnumerator() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
Return Me.Rows.GetEnumerator
End Function
Public Overrides Function Clone() As DataTable
Dim cln As IncomeTableDataTable = CType(MyBase.Clone,IncomeTableDataTable)
cln.InitVars
Return cln
End Function
Protected Overrides Function CreateInstance() As DataTable
Return New IncomeTableDataTable
End Function
Friend Sub InitVars()
Me.column金额 = Me.Columns("金额")
Me.column日期 = Me.Columns("日期")
Me.column项目名称 = Me.Columns("项目名称")
End Sub
Private Sub InitClass()
Me.column金额 = New DataColumn("金额", GetType(System.String), Nothing, System.Data.MappingType.Element)
Me.Columns.Add(Me.column金额)
Me.column日期 = New DataColumn("日期", GetType(System.String), Nothing, System.Data.MappingType.Element)
Me.Columns.Add(Me.column日期)
Me.column项目名称 = New DataColumn("项目名称", GetType(System.String), Nothing, System.Data.MappingType.Element)
Me.Columns.Add(Me.column项目名称)
End Sub
Public Function NewIncomeTableRow() As IncomeTableRow
Return CType(Me.NewRow,IncomeTableRow)
End Function
Protected Overrides Function NewRowFromBuilder(ByVal builder As DataRowBuilder) As DataRow
Return New IncomeTableRow(builder)
End Function
Protected Overrides Function GetRowType() As System.Type
Return GetType(IncomeTableRow)
End Function
Protected Overrides Sub OnRowChanged(ByVal e As DataRowChangeEventArgs)
MyBase.OnRowChanged(e)
If (Not (Me.IncomeTableRowChangedEvent) Is Nothing) Then
RaiseEvent IncomeTableRowChanged(Me, New IncomeTableRowChangeEvent(CType(e.Row,IncomeTableRow), e.Action))
End If
End Sub
Protected Overrides Sub OnRowChanging(ByVal e As DataRowChangeEventArgs)
MyBase.OnRowChanging(e)
If (Not (Me.IncomeTableRowChangingEvent) Is Nothing) Then
RaiseEvent IncomeTableRowChanging(Me, New IncomeTableRowChangeEvent(CType(e.Row,IncomeTableRow), e.Action))
End If
End Sub
Protected Overrides Sub OnRowDeleted(ByVal e As DataRowChangeEventArgs)
MyBase.OnRowDeleted(e)
If (Not (Me.IncomeTableRowDeletedEvent) Is Nothing) Then
RaiseEvent IncomeTableRowDeleted(Me, New IncomeTableRowChangeEvent(CType(e.Row,IncomeTableRow), e.Action))
End If
End Sub
Protected Overrides Sub OnRowDeleting(ByVal e As DataRowChangeEventArgs)
MyBase.OnRowDeleting(e)
If (Not (Me.IncomeTableRowDeletingEvent) Is Nothing) Then
RaiseEvent IncomeTableRowDeleting(Me, New IncomeTableRowChangeEvent(CType(e.Row,IncomeTableRow), e.Action))
End If
End Sub
Public Sub RemoveIncomeTableRow(ByVal row As IncomeTableRow)
Me.Rows.Remove(row)
End Sub
End Class
<System.Diagnostics.DebuggerStepThrough()> _
Public Class IncomeTableRow
Inherits DataRow
Private tableIncomeTable As IncomeTableDataTable
Friend Sub New(ByVal rb As DataRowBuilder)
MyBase.New(rb)
Me.tableIncomeTable = CType(Me.Table,IncomeTableDataTable)
End Sub
Public Property 金额 As String
Get
Try
Return CType(Me(Me.tableIncomeTable.金额Column),String)
Catch e As InvalidCastException
Throw New StrongTypingException("无法获取值,因为它是 DBNull。", e)
End Try
End Get
Set
Me(Me.tableIncomeTable.金额Column) = value
End Set
End Property
Public Property 日期 As String
Get
Try
Return CType(Me(Me.tableIncomeTable.日期Column),String)
Catch e As InvalidCastException
Throw New StrongTypingException("无法获取值,因为它是 DBNull。", e)
End Try
End Get
Set
Me(Me.tableIncomeTable.日期Column) = value
End Set
End Property
Public Property 项目名称 As String
Get
Try
Return CType(Me(Me.tableIncomeTable.项目名称Column),String)
Catch e As InvalidCastException
Throw New StrongTypingException("无法获取值,因为它是 DBNull。", e)
End Try
End Get
Set
Me(Me.tableIncomeTable.项目名称Column) = value
End Set
End Property
Public Function Is金额Null() As Boolean
Return Me.IsNull(Me.tableIncomeTable.金额Column)
End Function
Public Sub Set金额Null()
Me(Me.tableIncomeTable.金额Column) = System.Convert.DBNull
End Sub
Public Function Is日期Null() As Boolean
Return Me.IsNull(Me.tableIncomeTable.日期Column)
End Function
Public Sub Set日期Null()
Me(Me.tableIncomeTable.日期Column) = System.Convert.DBNull
End Sub
Public Function Is项目名称Null() As Boolean
Return Me.IsNull(Me.tableIncomeTable.项目名称Column)
End Function
Public Sub Set项目名称Null()
Me(Me.tableIncomeTable.项目名称Column) = System.Convert.DBNull
End Sub
End Class
<System.Diagnostics.DebuggerStepThrough()> _
Public Class IncomeTableRowChangeEvent
Inherits EventArgs
Private eventRow As IncomeTableRow
Private eventAction As DataRowAction
Public Sub New(ByVal row As IncomeTableRow, ByVal action As DataRowAction)
MyBase.New
Me.eventRow = row
Me.eventAction = action
End Sub
Public ReadOnly Property Row As IncomeTableRow
Get
Return Me.eventRow
End Get
End Property
Public ReadOnly Property Action As DataRowAction
Get
Return Me.eventAction
End Get
End Property
End Class
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -