/// <summary>
        /// Create graphic object for editing marker.
        /// </summary>
        /// <param name="editingMarker">Source editing marker.</param>
        /// <returns>Graphic object for editing marker.</returns>
        public static EditMarkerGraphicObject Create(EditingMarker editingMarker)
        {
            EditMarkerGraphicObject graphic = null;

            Symbol editMarkerSymbol;
            if (editingMarker.MultipleIndex > -1)
                editMarkerSymbol = new EditingMarkerSymbol();
            else
                editMarkerSymbol = new PencilSymbol();

            graphic = new EditMarkerGraphicObject(editingMarker)
            {
                Symbol = editMarkerSymbol
            };

            graphic.SetZIndex(ObjectLayer.FRONTZINDEX);

            return graphic;
        }
        /// <summary>
        /// React on barrier property changed.
        /// </summary>
        /// <param name="sender">Ignored.</param>
        /// <param name="e">Event args.</param>
        private void _BarrierPropertyChanged(object sender, PropertyChangedEventArgs e)
        {
            if (e.PropertyName == Barrier.PropertyNameGeometry)
            {
                Barrier barrier = _editingMarker.EditingObject as Barrier;
                Geometry = _CreatePoint(barrier);

                if (barrier.Geometry is ESRI.ArcLogistics.Geometry.Point)
                    Symbol = new PencilSymbol();
                else
                    Symbol = new EditingMarkerSymbol();
            }
        }