[Webinar] Streamline your web hosting managementRegister Today

x
• Status: Solved
• Priority: Medium
• Security: Public
• Views: 290

# How to assing values to each element in a structure in vb.net in a single instruction?

I have a strucutre in vb.net whose each element is a numeric variable, for example:
dim strTotals as structure
dim total1 as decimal
dim total2 as decimal
dim total3 as decimal
.....
end Structure

dim vtotals as strTotals

I want to assign 0 to each element in one single instruction. Is any way to do that or Do I have to assign 0 in this way: vtotal.total1=0: vtotal.total2=0: ....?

0
BemboX
1 Solution

Commented:
I can't think of any way other than perhaps using reflection to loop through structure elements which could be more work.
0

Commented:
First, your structure declaration looks like VB-Sharp. VB syntax should be
Private Structure strTotals
Dim total1 As Decimal
Dim total2 As Decimal
Dim total3 As Decimal
End Structure
Second, in VB you don't need initialize integers (as well as double, float, decimal and other numerics) with 0 - they are zero by default:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim vtotals As strTotals
MsgBox(vtotals.total1) 'show 0
End Sub
If you need init structure with values other then 0, you can either use New method:
Private Structure strTotals
Dim total1 As Decimal
Dim total2 As Decimal
Dim total3 As Decimal
Public Sub New(ByVal t1 As Decimal, ByVal t2 As Decimal, ByVal t3 As Decimal)
total1 = t1 : total2 = t2 : total3 = t3
End Sub
End Structure
'.....
Dim vtotals As New strTotals(1, 2, 3)
or with VS2010 use With keyword:
Dim vtotals As New strTotals With {.total1 = 1, .total2 = 2, .total3 = 3}
0

Author Commented:
Thanks.
0

## Featured Post

Tackle projects and never again get stuck behind a technical roadblock.