private void BindIMAccess(SysRole role) { ItemsControl op = View.Extension.UIHelper.GetVisualChild <ItemsControl>(myRadDataForm, "imList"); if (op == null) { return; } IMReceiveAccessEnum bi = (IMReceiveAccessEnum)role.IMAccess; var fields = op.ChildrenOfType <CheckBox>(); if (fields != null && fields.Count() > 0) { foreach (var field in fields) { IMReceiveAccessEnum tag = (IMReceiveAccessEnum)field.Tag; if ((bi & tag) == tag) { field.IsChecked = true; } else { field.IsChecked = false; } } } }
public static void AsyncSendMessageTo(IEnumerable <ClientUserPoint> users, IMessage message, IMReceiveAccessEnum access) { Action action = () => { if (message.Sender == null) { message.Sender = IMHelper.CurrentUser; } IEnumerable <ClientUserPoint> aims = users.Where(o => (access & (IMReceiveAccessEnum)o.IMReceiveAccess) == access); SendMessageTo(aims, message); }; action.BeginInvoke(null, null); }