/// <summary>
        /// Constructor
        /// </summary>
        public Ev3PortViewModel()
        {
            this.ConnectState = new ConnectState(ConnectionState.Disconnected);
            this.UpdateState();

            this.AvailableComPorts = ComPortViewModel.Create();
            this.SelectedComPort   = this.AvailableComPorts.First();
        }
 /// <summary>
 /// Compare ComPortViewModel object specified by argument with self.
 /// </summary>
 /// <param name="ViewModel">ViewModel object to compare.</param>
 /// <returns>If matches, returns true, otherwise returns false.</returns>
 public bool Equals(ComPortViewModel ViewModel)
 {
     try
     {
         if (this.ComPort.Equals(ViewModel.ComPort) &&
             this.PortName.Equals(ViewModel.PortName))
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     catch (NullReferenceException ex)
     {
         Console.WriteLine(ex.Message);
         return(false);
     }
 }