private void Synchronize(SynchronizationKey key)
        {
            if (key == null)
            {
                return;
            }

            var collection = m_pairedColumns;

            SynchronizationEntry pair;

            if (!collection.TryGetValue(key, out pair))
            {
                if (key.MasterColumn != null)
                {
                    pair = new BoundColumn(this, key);
                }
                else
                {
                    pair = new UnboundColumn(this, key);
                }

                collection.Add(key, pair);
            }

            pair.Synchronize();
        }
    private void Synchronize( SynchronizationKey key )
    {
      if( key == null )
        return;

      var collection = this.PairedColumns;

      SynchronizationEntry pair;
      if( !collection.TryGetValue( key, out pair ) )
      {
        if( key.MasterColumn != null )
        {
          pair = new BoundColumn( key );
        }
        else
        {
          pair = new UnboundColumn( key );
        }

        collection.Add( key, pair );
      }

      pair.Synchronize();
    }