public bool UpdateErrorProviderTextForProperty(string errorMessage, string propertyName) { if (string.IsNullOrEmpty(propertyName)) { throw new ArgumentNullException("propertyName"); } if (string.IsNullOrEmpty(errorMessage)) { throw new ArgumentNullException("errorMessage"); } bool result = false; Binding bindingGivenPropertyName = this.GetBindingGivenPropertyName(propertyName); if (bindingGivenPropertyName != null) { ExchangeErrorProvider exchangeErrorProvider = this.enabledBindingSources[(BindingSource)bindingGivenPropertyName.DataSource]; StringBuilder stringBuilder = new StringBuilder(exchangeErrorProvider.GetError(bindingGivenPropertyName.Control)); if (stringBuilder.Length > 0) { stringBuilder.AppendLine(); } stringBuilder.Append(errorMessage); Control errorProviderAnchor = InputValidationProvider.GetErrorProviderAnchor(bindingGivenPropertyName.Control); exchangeErrorProvider.SetError(errorProviderAnchor, stringBuilder.ToString()); result = true; } return(result); }
public ExchangeErrorProvider GetErrorProvider(BindingSource bindingSource) { ExchangeErrorProvider result = null; this.enabledBindingSources.TryGetValue(bindingSource, out result); return(result); }
public void SetEnabled(BindingSource bindingSource, bool enabled) { if (enabled != this.GetEnabled(bindingSource)) { if (enabled) { ExchangeErrorProvider exchangeErrorProvider = new ExchangeErrorProvider(this.components); ((ISupportInitialize)exchangeErrorProvider).BeginInit(); exchangeErrorProvider.BlinkStyle = ErrorBlinkStyle.NeverBlink; exchangeErrorProvider.ContainerControl = this.ContainerControl; ((ISupportInitialize)exchangeErrorProvider).EndInit(); this.enabledBindingSources.Add(bindingSource, exchangeErrorProvider); if (this.ContainerBindingContext != null) { this.BindToBindingSource(bindingSource); return; } } else { ExchangeErrorProvider exchangeErrorProvider2 = this.enabledBindingSources[bindingSource]; this.components.Remove(exchangeErrorProvider2); exchangeErrorProvider2.Dispose(); this.enabledBindingSources.Remove(bindingSource); if (this.ContainerBindingContext != null) { this.UnbindFromBindingSource(bindingSource); } } } }
public void SetUIValidationEnabled(ExchangeUserControl userControl, bool enabled) { if (enabled) { if (!this.validatingControls.ContainsKey(userControl)) { ExchangeErrorProvider exchangeErrorProvider = new ExchangeErrorProvider(this.components); ((ISupportInitialize)exchangeErrorProvider).BeginInit(); exchangeErrorProvider.BlinkStyle = ErrorBlinkStyle.NeverBlink; exchangeErrorProvider.ContainerControl = this.ContainerControl; ((ISupportInitialize)exchangeErrorProvider).EndInit(); this.validatingControls.Add(userControl, exchangeErrorProvider); userControl.ValidationErrorsChanging += this.UpdateUserControlUIErrorProvider; return; } } else if (this.validatingControls.ContainsKey(userControl)) { this.validatingControls.Remove(userControl); userControl.ValidationErrorsChanging -= this.UpdateUserControlUIErrorProvider; } }
private void Control_EnabledChanged(object sender, EventArgs e) { Control control = (Control)sender; if (!control.Enabled) { foreach (object obj in control.DataBindings) { Binding binding = (Binding)obj; BindingSource bindingSource = binding.DataSource as BindingSource; if (bindingSource != null) { ExchangeErrorProvider errorProvider = this.GetErrorProvider(bindingSource); if (errorProvider != null) { Control errorProviderAnchor = InputValidationProvider.GetErrorProviderAnchor(control); errorProvider.SetError(errorProviderAnchor, string.Empty); } } } } }