Beispiel #1
0
        /// <summary>
        /// Add Customers full Names into 1 list
        /// Add customers PhoneNumbers into 1 list
        /// Add Customers NationalNumbers into 1 list
        /// Add delete pressed event for CustomerNameValue_Sell
        /// </summary>
        private void Update_CustomerNamesVariablesAndEvents()
        {
            GetCustomersFromPublicVariables();
            foreach (CustomerModel customer in Customers)
            {
                CustomersFullNames.Add(customer.Person.FullName);

                if (customer.Person.PhoneNumber != null)
                {
                    CustomersPhoneNumbers.Add(customer.Person.PhoneNumber);
                }

                if (customer.Person.NationalNumber != null)
                {
                    CustomersNationalNumbers.Add(customer.Person.NationalNumber);
                }
            }

            CustomerNameValue_InstallmentOrderUC.PreviewKeyDown   += DelPressed_CustomerNameValue_InstallmentOrderUC;
            PhoneNumberValue_InstallmentOrderUC.PreviewKeyDown    += DelPressed_PhoneNumberValue_InstallmentOrderUC;
            NationalNumberValue_InstallmentOrderUC.PreviewKeyDown += DelPressed_NationalNumberValue_InstallmentOrderUC;



            UpdateCustomerInfo(GlobalConfig.Connection.GetDefaultCustomer());
        }
Beispiel #2
0
        /// <summary>
        /// Events for CustomerValue changes to auto complete
        /// source : https://stackoverflow.com/questions/950770/autocomplete-textbox-in-wpf
        /// </summary>
        private void CustomerNameValue_InstallmentOrderUC_TextChanged(object sender, TextChangedEventArgs e)
        {
            var change = e.Changes.FirstOrDefault();

            if (!InProg_CustomerNameValue_InstallmentOrderUC)
            {
                InProg_CustomerNameValue_InstallmentOrderUC = true;
                var culture = new CultureInfo(CultureInfo.CurrentCulture.Name);
                var source  = ((TextBox)sender);
                if (((change.AddedLength - change.RemovedLength) > 0 || source.Text.Length > 0) && !DelKeyPressed_CustomerNameValue_InstallmentOrderUC)
                {
                    if (CustomersFullNames.Where(x => x.IndexOf(source.Text, StringComparison.CurrentCultureIgnoreCase) == 0).Count() > 0)
                    {
                        var _appendtxt = CustomersFullNames.FirstOrDefault(ap => (culture.CompareInfo.IndexOf(ap, source.Text, CompareOptions.IgnoreCase) == 0));
                        _appendtxt             = _appendtxt.Remove(0, change.Offset + 1);
                        source.Text           += _appendtxt;
                        source.SelectionStart  = change.Offset + 1;
                        source.SelectionLength = source.Text.Length;
                    }
                }
                InProg_CustomerNameValue_InstallmentOrderUC = false;
            }
        }
Beispiel #3
0
 /// <summary>
 /// Implemnted from interface to set the customer If this Customer is new
 /// </summary>
 /// <param name="customer"></param>
 public void CustomerComplete(CustomerModel customer)
 {
     Customers.Add(customer);
     CustomersFullNames.Add(customer.Person.FullName);
     UpdateCustomerInfo(customer);
 }