コード例 #1
0
        public void ShowUserMessage(string text)
        {
            lblUserMessage.Text = "";

            if (string.IsNullOrWhiteSpace(text))
            {
                return;                            //this way clients can have generic logic fire w/o checking to see whether they're actually sending anything in each particular case
            }
            //e.g. TransactionType dropdown on TaxForm UI, only a few types actually have a warning message associated with them

            UserMessagesModel.Add(text);

            if (_userMessageFadeawayStoryboard == null)
            {
                _userMessageFadeawayStoryboard = ((Storyboard)FindResource("Fadeaway_Animation")).Clone(); //so we can reuse the fadeaway template in multiple places
                Storyboard.SetTarget(_userMessageFadeawayStoryboard, popUserMessage);
            }

            //textual carriage returns must be turned into <LineBreak /> objects in XAML land
            var lines = text.Split('\n');

            for (int i = 0; i < lines.Length; i++)
            {
                if (i > 0)
                {
                    lblUserMessage.Inlines.Add(new LineBreak());
                }
                lblUserMessage.Inlines.Add(lines[i]);
            }

            _userMessageFadeawayStoryboard.Begin();
        }
コード例 #2
0
        public ActionResult DeleteMessages(int typeId, string messageIds)
        {
            Execute(() => _accountProfileService.DeleteMessages(CurrentUser.Id, ParseMessageIds(messageIds)));

            var model = new UserMessagesModel { MessageTypeId = typeId };
            FillUserMessagesModel(model);

            return ModelIsValid
                ? (ActionResult)View("MessagesData", model)
                : JsonErrorResult();
        }
コード例 #3
0
        private void FillUserMessagesModel(UserMessagesModel model)
        {
            var pagerData = (Execute(() => _accountProfileService.GetUserMessages(CurrentUser.Id, model.MessageTypeId, model.Pager.PageId, model.Pager.PageSize))
                ?? new PageData<UserMessageData>());

            model.CopyFrom(pagerData);
        }
コード例 #4
0
 public ActionResult MessagesData(UserMessagesModel model)
 {
     FillUserMessagesModel(model);
     return View(model);
 }