public Account()
{
_server = FieldValue.GetByName(values, "server");
_server.PropertyChanged += (s, e) => RaisePropertyChanged("server");
_username = FieldValue.GetByName(values, "username");
_username.PropertyChanged += (s, e) => RaisePropertyChanged("username");
_name = FieldValue.GetByName(values, "name");
_name.PropertyChanged += (s, e) => RaisePropertyChanged("name");
_guid = FieldValue.GetByName(values, "guid");
_guid.PropertyChanged += (s, e) => {
if (!guid_ok(this, _guid.value) || String.IsNullOrEmpty(_guid.value)) {
for (int i = 1; i <= 10; i++) {
int val = i == 10 ? 0 : i; // want 0 checked last.
if (guid_ok(this, val.ToString())) {
_guid.value = val.ToString();
return;
}
}
}
RaisePropertyChanged("guid");
RaisePropertyChanged("gateway_id");
};
_caller_id_name = FieldValue.GetByName(values, "caller_id_name");
_caller_id_name.PropertyChanged += (s, e) => RaisePropertyChanged("caller_id_name");
_caller_id_number = FieldValue.GetByName(values, "caller_id_number");
_caller_id_number.PropertyChanged += (s, e) => RaisePropertyChanged("caller_id_number");
_guid.value = "1";
PropertyChanged += Account_PropertyChanged;
state = "NOREG";
}