using System; using System.Collections.Generic; using System.ComponentModel; using System.Text; using System.Windows.Forms; namespace IvyBus { public partial class IvyDomain : UserControl { private string domain = string.Empty; public event EventHandler DomainChanged; #if (!PocketPC) [Category("Ivy")] [DefaultValue("")] [Bindable(true)] #endif public string Domain { get { return domain; } set { if (domain != value) { domain = value; ivybus.Text = domain; if (DomainChanged != null) DomainChanged(this, EventArgs.Empty); } } } public IvyDomain() { InitializeComponent(); SetDefault(); } public void SetDefault() { if (IsEmpty()) { domain = Ivy.GetDomain(domain); ivybus.Text = domain; } } public bool IsEmpty() { return String.IsNullOrEmpty( domain ); } private void ivybus_Validating(object sender, CancelEventArgs e) { e.Cancel = !Ivy.ValidatingDomain(ivybus.Text); errorProvider1.SetError(this.ivybus, e.Cancel ? "Bad Address":"" ); } private void ivybus_Validated(object sender, EventArgs e) { errorProvider1.SetError(this.ivybus, ""); if ( domain != ivybus.Text ) Domain = ivybus.Text; } } }