title: SDK2: updating card properties on a cardboard
body: <p>I've got a cardboard, and I get a list of the cards displayed by calling: cardboard.getCards()</p>
  
  <p>I'd like to update the color of some of those cards, so I iterate through the cards, and when I find one I want to update I do the following:</p>
  
  <pre><code>    var record   = card.getRecord();
      var newColor = '#ff0000';
  
      record.set('DisplayColor', newColor);
  </code></pre>
  
  <p>...but it does not change the card.  However, if I call the same code as a result of a beforecarddroppedsave event, the color changes immediately.</p>
  
  <p>Through a bit of experimenting, I have a solution if I follow the record.set() line with this:</p>
  
  <pre><code>    this.outstandingUpdates++;
      record.save({callback: function() {
          if (--this.outstandingUpdates === 0) {
              this.cardboard.refresh();
          }
      }, scope: this});
  </code></pre>
  
  <p>...but its kind of ugly in that you see the board refresh, and it seems like there should be a better way to do this so that it acts like when called from the beforecarddroppedsave event (and if not that, just having one callback instead of having to count the updates).</p>
  
  <p>Is there a better, less ugly way to do this that does not require a refresh of the whole cardboard?</p>