/// <summary>
            /// Raises the <see cref="PropertyChanged"/> event synchronously on the UI thread.
            /// </summary>
            /// <param name="e">Specifies the property that changed.</param>
            protected void RaisePropertyChanged( PropertyChangedEventArgs e )
            {
                if( e.NullReference() )
                    throw new ArgumentNullException().StoreFileLine();

                UI.Invoke(() =>
                {
                    var handler = this.PropertyChanged;
                    if( handler.NotNullReference() )
                        handler(this, e);
                });
            }