public Builder SetAddress(string value)
            {
                AddressLines.Clear();
                AddressLines.AddRange(NormalizeAddressLines(AddressLines));

                return(this);
            }
            public Builder SetAddressLines(IEnumerable <string> lines)
            {
                AddressLines.Clear();
                AddressLines.AddRange(lines);

                return(this);
            }
            public Builder Set(AddressData addressData)
            {
                _fields.Clear();

                foreach (var field in _singleValueFields)
                {
                    Set(field, addressData.GetFieldValue(field));
                }

                AddressLines.Clear();
                AddressLines.AddRange(addressData.AddressLines);
                SetLanguageCode(addressData.LanguageCode);

                return(this);
            }
        /// <summary>
        ///   Initialise the addresslines list of address lines. Clears any existing lines, further lines can be added through the AddressLine property
        /// </summary>
        public LabelCollection SetAddressLines(params string[] lines)
        {
            if (AddressLines == null)
            {
                AddressLines = new LabelCollection(this);
            }
            else
            {
                AddressLines.Clear();
            }
            foreach (string line in lines)
            {
                AddressLines.Add(line.Trim());
            }

            return(AddressLines);
        }