示例#1
0
        /// <summary>
        /// Populate the email addresses
        /// </summary>
        protected override void PopulateEmailAddress()
        {
            this.EmailAddress.Clear();
            var defaultEmail = (this.Thing.DefaultEmailAddress == null) ? Guid.Empty : this.Thing.DefaultEmailAddress.Iid;

            foreach (var thing in this.Thing.EmailAddress.Where(t => t.ChangeKind != ChangeKind.Delete))
            {
                var row = new EmailAddressRowViewModel(thing, this.Session, this);
                this.EmailAddress.Add(row);
                row.IsDefault = thing.Iid == defaultEmail;
            }

            this.SelectedDefaultEmailAddress = this.Thing.DefaultEmailAddress;
        }
示例#2
0
        public void VerifyThatTheIsDefaultPropertyIsReactiveProperty()
        {
            this.viewmodel = new EmailAddressRowViewModel(this.email, this.session.Object, null);

            Assert.IsFalse(this.viewmodel.IsDefault);

            var eventHandlerCount = 0;

            this.viewmodel.PropertyChanged += (o, e) =>
            {
                eventHandlerCount++;
            };

            this.viewmodel.IsDefault = true;

            Assert.IsTrue(this.viewmodel.IsDefault);
            Assert.AreEqual(1, eventHandlerCount);
        }