private void DataDelete(WebMsgEventArgs eventArgs)
        {
            if (_isSelfDelPostil)
            {
                _isSelfDelPostil = false;
                return;
            }
            var deleteId = eventArgs.Data.As <Id>();

            if (deleteId == null)
            {
                return;
            }
            var model = ViewPictureModels.FirstOrDefault(t => t.PostilId == deleteId);

            if (model == null)
            {
                return;
            }
            if (ViewPictureModels.Count == 8)
            {
                if (SelectedViewPicModel.PostilId == deleteId)
                {
                    LoadPostilInfosAsync(_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.ElementAtOrDefault(model.SelectedPicIndex) ?? ViewPictureModels.LastOrDefault());
                }
                else
                {
                    var selectId = SelectedViewPicModel.PostilId;
                    LoadPostilInfosAsync(_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.FirstOrDefault(t => t.PostilId == selectId) ?? ViewPictureModels.FirstOrDefault());
                }
            }
            else
            {
                ViewPictureModels.Remove(model);
                for (var i = 0; i < ViewPictureModels.Count; i++)//重新给索引
                {
                    ViewPictureModels[i].SelectedPicIndex = i;
                }
                _listPostilInfoModel.Remove(_listPostilInfoModel.FirstOrDefault(t => t._id == deleteId));
                if (deleteId == SelectedViewPicModel.PostilId)
                {
                    SelectedViewPicModel = ViewPictureModels.ElementAtOrDefault(model.SelectedPicIndex) ?? ViewPictureModels.LastOrDefault();
                }
                if (ViewPictureModels.Count == 0 && _currentPageIndex != 0)
                {
                    LoadPostilInfosAsync(--_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.LastOrDefault());
                }
            }
        }
        /// <summary>
        /// 删除某条批注事件
        /// </summary>
        /// <param name="delPicModel"></param>
        private async void OnDeletePostilItem(PictureModel delPicModel)
        {
            if (delPicModel == null)
            {
                return;
            }
            if (this.ShowMessage("删除后将无法恢复信息,确定删除这条批注吗?", "警告", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
            {
                return;
            }
            var index    = delPicModel.SelectedPicIndex;
            var deleteId = delPicModel.PostilId;
            var result   = await DataApi.DeleteAsync(Hubs.Postil.T, new[] { deleteId });

            if (!result.IsOk)
            {
                Mg.Get <IMgLog>().Error("删除批注信息失败" + result.Message);
                Mg.Get <IMgDialog>().ShowDesktopAlert("删除批注信息失败", result.Message);
                return;
            }
            if (ViewPictureModels.Count == 8)
            {
                if (SelectedViewPicModel.PostilId == deleteId)
                {
                    LoadPostilInfosAsync(_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.ElementAtOrDefault(index) ?? ViewPictureModels.LastOrDefault());
                }
                else
                {
                    var selectId = SelectedViewPicModel.PostilId;
                    LoadPostilInfosAsync(_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.FirstOrDefault(t => t.PostilId == selectId) ?? ViewPictureModels.FirstOrDefault());
                }
            }
            else
            {
                var selectId = SelectedViewPicModel.PostilId;
                ViewPictureModels.Remove(delPicModel);
                for (var i = 0; i < ViewPictureModels.Count; i++)//重新给索引
                {
                    ViewPictureModels[i].SelectedPicIndex = i;
                }
                _listPostilInfoModel.Remove(_listPostilInfoModel.FirstOrDefault(t => t._id == deleteId));
                if (deleteId == selectId)
                {
                    SelectedViewPicModel = ViewPictureModels.ElementAtOrDefault(index) ?? ViewPictureModels.LastOrDefault();
                }
                if (ViewPictureModels.Count == 0 && _currentPageIndex != 0)
                {
                    LoadPostilInfosAsync(--_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.LastOrDefault());
                }
            }
            _isSelfDelPostil = true;
            await Mg.Get <IMgWeb>().SendWebMsgAsync("demoPostil/delete", deleteId.ToString(), BoardcastType.ProjectGroup);//发送广播
        }
        /// <summary>
        /// 批注增加的广播信息处理事件
        /// </summary>
        /// <param name="eventArgs"></param>
        private void DataAdd(WebMsgEventArgs eventArgs)
        {
            var index = SelectedViewPicModel?.SelectedPicIndex ?? 0;

            if (_currentPageIndex == 0)//最新的只会添加在前面
            {
                LoadPostilInfosAsync(_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.ElementAtOrDefault(index) ?? ViewPictureModels.LastOrDefault());
            }
        }
        private void OnPreviousPicture()
        {
            if (!CanPreviousPicture())
            {
                return;
            }
            var index = SelectedViewPicModel.SelectedPicIndex;

            if (index == 0 && _currentPageIndex != 0)
            {
                LoadPostilInfosAsync(--_currentPageIndex, () => SelectedViewPicModel = ViewPictureModels.LastOrDefault());
            }
            else
            {
                SelectedViewPicModel = ViewPictureModels.ElementAt(index - 1);
            }
        }