Eddy is right in the foreach, but for recalculation, I'd have a handler that handles the on change event from each of the boxes, it can all be done in one subroutine
'kinda like this
private sub TextboxChanged(sender as object, e as eventargs) handles txtRoomWidth.changed, txtRoomLength.changed, lstFlooringType.changed
dim SquareFootage as single = txtRoomWidth.value * txtRoomLength.value
dim CostPerFoot as single 'Insert code here to get the cost per square foot of the current flooring type
dim RoomCost as single = Squarefootage * CostPerFoot
'put code here to insert the cost into the list of costs
dim totalprice as single = 0
foreach RoomPrice as single in RoomPriceList
totalprice += RoomPrice
next
txtTotalprice.value = "Total cost is $" & totalprice
end sub
I'd have used the names you used, but I can't open both windows at once