Example #1
0
        public PropertyItem(T valueEditor, PropertyInfo propertyInfo, IEnumerable <object> targets)
        {
            this.propertyInfo = propertyInfo ?? throw new ArgumentNullException(nameof(propertyInfo));
            this.targets      = targets ?? throw new ArgumentNullException(nameof(targets));

            ValueEditor = valueEditor;
            groupSetter = new GroupSetter(propertyInfo);
            groupGetter = new GroupGetter(propertyInfo);
            SubscribeToPropertyChangesOf(targets.OfType <INotifyPropertyChanged>());
        }
Example #2
0
        private void PopulateRecieverTreeView()
        {
            bool            success = false;
            List <BllGroup> groups  = null;

            while (!success)
            {
                try
                {
                    IGroupGetter gg = new GroupGetter(serverInstance.server);
                    groups  = gg.GetAllGroups();
                    success = true;
                }
                catch
                {
                    serverInstance.ConnectToServer();
                    success = false;
                }
            }

            foreach (var group in groups)
            {
                var            node         = treeView1.Nodes.Add(group.Name);
                List <BllUser> usersByGroup = new List <BllUser>();
                success = false;
                while (!success)
                {
                    try
                    {
                        IUserGetter ug = new UserGetter(serverInstance.server);
                        usersByGroup = ug.GetUsersByGroupAndSignInDateRange(group, int.Parse(Properties.Resources.PERMISSIBLE_DATE_RANGE_IN_DAYS));
                        success      = true;
                    }
                    catch
                    {
                        serverInstance.ConnectToServer();
                        success = false;
                    }
                }
                foreach (var user in usersByGroup)
                {
                    if (user.Id != Sender.Id)
                    {
                        node.Nodes.Add(user.Fullname);
                        Users.Add(user);
                    }
                }
            }
        }
        private List <BllGroup> GetGroupsFromServer()
        {
            bool            success = false;
            List <BllGroup> groups  = new List <BllGroup>();

            while (!success)
            {
                try
                {
                    IGroupGetter gg = new GroupGetter(serverInstance.server);
                    groups  = gg.GetAllGroups();
                    success = true;
                }
                catch
                {
                    serverInstance.ConnectToServer();
                    success = false;
                }
            }
            return(groups);
        }