public static void GenDisplayItemLine(DisplayItemList DLList
            , GePoint startPoint, GePoint endPoint)
        {
            Debug.Assert(DLList != null && startPoint != null && endPoint != null);
            if (null == DLList || null == startPoint || null == endPoint) return;

            if (!startPoint.IsEqualTo(endPoint))
            {
                DisplayItemLine dpLine = new DisplayItemLine(startPoint, endPoint);
                DLList.AddItem(dpLine);
            }
        }
 // Support the operation for selection
 protected override Manipulator OnItemSelection(DisplayItemLine SelectedItem)
 {
     try
     {
         PolyLineNode Node = (PolyLineNode)m_Node;
         return new MoveLineManipulator(Node);
     }
     catch
     {
         return null;
     }
 }
 protected virtual Manipulator OnItemSelection(DisplayItemLine SelectedItem)
 {
     return null;
 }