/// <summary>
        /// Deserializes an XML file with Valve Printhead Type properties then stores those properties into the input Valve PrintheadType.
        /// </summary>
        /// <param name="xmlReader"></param>
        /// <param name="printheadTypeViewModel"></param>
        public override void DeserializePrintheadType(XmlReader xmlReader, PrintheadTypeViewModel printheadTypeViewModel)
        {
            ValvePrintheadTypeViewModel valvePrintheadTypeViewModel = (ValvePrintheadTypeViewModel)printheadTypeViewModel;

            while (xmlReader.Read())
            {
                //Skip through newlines (this program's XML Writer uses newlines).
                if ((xmlReader.Name != "\n") && (!String.IsNullOrWhiteSpace(xmlReader.Name)))
                {
                    //End method if the end of "ValvePrintheadType" element is reached.
                    if ((xmlReader.Name == "ValvePrintheadType") && (xmlReader.NodeType == XmlNodeType.EndElement))
                    {
                        return;
                    }

                    switch (xmlReader.Name)
                    {
                    case "ValvePin":
                        valvePrintheadTypeViewModel.AttachedValveGPIOPinViewModel = base._microcontrollerViewModel.FindPin(xmlReader.ReadElementContentAsInt());
                        valvePrintheadTypeViewModel.ExecuteRefreshPinBySettingListCommand("ValveGPIOPinViewModelList");
                        break;
                        break;

                    default:
                        base.ReportErrorUnrecognizedElement(xmlReader);
                        break;
                    }
                }
            }
        }