title: Using List(Of T).ForEach method to update values not working as expected
body: <p>I have the following code, </p>
  
  <pre><code>PB.ForEach(Function(x) x.Cost = GetPartCost(x.PartNumber, x.Units, x.Cost, FB))
  
  Return PB.Sum(Function(x) (x.Cost * x.Qty))
  </code></pre>
  
  <p>However it always returns 0. I've checked and the <code>GetPartCost</code> function executes and returns a non-zero number but the list item cost properties are never updated.</p>
  
  <p>The property is just a simple property, </p>
  
  <pre><code>Public Property Cost() As Double
      Get
          Return _Cost
      End Get
      Set(ByVal value As Double)
          _Cost = value
      End Set
  End Property
  </code></pre>
  
  <p>If I set a breakpoint in the <code>Set</code> of the property, it never gets hit.</p>
  
  <p>What is going on with this?</p>