private void Write(WebPageBaseViewModel modalViewModel)
 {
     _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
     string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdView);
     _stringBuilder.AppendFormat("<asp:TemplateField HeaderText=\"{0}\" SortExpression=\"{1}\" AccessibleHeaderText=\"{1}\">\n", caption, modalViewModel.FieldInDb);
     _stringBuilder.AppendFormat("<ItemTemplate>\n");
     switch (modalViewModel.Type)
     {
         case "int":
         case "varchar":
         case "datetime":
         case "decimal":
         case "dictionary":
             _stringBuilder.AppendFormat("<asp:Label ID=\"{0}\" runat=\"server\"><%# Eval(\"{1}\")%></asp:Label>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb);
             break;
         case "bit":
             _stringBuilder.AppendFormat("<asp:CheckBox  ID=\"{0}\" runat=\"server\" value=\"<%# Eval(\"{1}\")%>\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb);
             break;
         case "file":
             _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" FileName=\"<%# Eval(\"fileName\")%>\" Value='<%# (Eval(\"{1}\") is DBNull) ? -1 : Eval(\"{1}\") %>'/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb);
             break;
     }
     _stringBuilder.AppendFormat("</ItemTemplate>\n");
     _stringBuilder.AppendFormat("</asp:TemplateField>\n");
 }
        private void Write(WebPageBaseViewModel modalViewModel)
        {
            _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
            string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdView);

            _stringBuilder.AppendFormat("<asp:TemplateField HeaderText=\"{0}\" SortExpression=\"{1}\" AccessibleHeaderText=\"{1}\">\n", caption, modalViewModel.FieldInDb);
            _stringBuilder.AppendFormat("<ItemTemplate>\n");
            switch (modalViewModel.Type)
            {
            case "int":
            case "varchar":
            case "datetime":
            case "decimal":
            case "dictionary":
                _stringBuilder.AppendFormat("<asp:Label ID=\"{0}\" runat=\"server\"><%# Eval(\"{1}\")%></asp:Label>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb);
                break;

            case "bit":
                _stringBuilder.AppendFormat("<asp:CheckBox  ID=\"{0}\" runat=\"server\" value=\"<%# Eval(\"{1}\")%>\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb);
                break;

            case "file":
                _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" FileName=\"<%# Eval(\"fileName\")%>\" Value='<%# (Eval(\"{1}\") is DBNull) ? -1 : Eval(\"{1}\") %>'/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb);
                break;
            }
            _stringBuilder.AppendFormat("</ItemTemplate>\n");
            _stringBuilder.AppendFormat("</asp:TemplateField>\n");
        }
示例#3
0
 private void SetParentsCollections(WebPageBaseViewModel parent)
 {
     foreach (WebPageBaseViewModel webPageBaseViewModel in parent.Children)
     {
         //webPageBaseViewModel.ParentCollection = parent.Children;
         webPageBaseViewModel.Parent = parent;
         SetParentsCollections(webPageBaseViewModel);
     }
 }
示例#4
0
        public void Execute(object parameter)
        {
            StringBuilder        sbr       = new StringBuilder();
            StringBuilder        sbe       = new StringBuilder();
            bool                 isEdit    = parameter.ToString() == "True";
            WebPageBaseViewModel rootModel = _model.Properties.FirstOrDefault();

            Constructor(sbr, sbe, rootModel.Children, isEdit);
            //_model.ResuorseTextRu = sbr.ToString();
            //_model.ResuorseTextEn = sbe.ToString();
        }
示例#5
0
        /// <summary>
        /// Создает контрол в режиме Edit
        /// </summary>
        /// <param name="modalViewModel">Обьект поле</param>
        private void WriteEdit(WebPageBaseViewModel modalViewModel)
        {
            _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
            string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdEdit);

            switch (modalViewModel.Type)
            {
            case "time":
            case "date":
            case "datetime":
                _stringBuilder.AppendFormat("<gp:ValidatingJsCalendar ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" ImageUrl=\"~/Images/week_small.gif\"  ValidType=\"FORM_ERROR_TYPE_DATE\" />\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "int":
                _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" sqlType=\"Int\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "decimal":
                _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" sqlType=\"Decimal\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "varchar":
                _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "bit":
                _stringBuilder.AppendFormat("<gp:ValidatingBoolLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "file":
                _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "dictionary":
                _stringBuilder.AppendFormat("<gp:ValidatingDropDawnList ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;
            }
        }
示例#6
0
 void AssociatedObject_MouseLeave(object sender, MouseEventArgs e)
 {
     if (_isMouseClicked)
     {
         //set the item's DataContext as the data to be transferred
         WebPageBaseViewModel dragObject = this.AssociatedObject.DataContext as WebPageBaseViewModel;
         if (dragObject != null && dragObject.IsDragable)
         {
             DataObject data = new DataObject();
             data.SetData(typeof(WebPageBaseViewModel), this.AssociatedObject.DataContext);
             System.Windows.DragDrop.DoDragDrop(this.AssociatedObject, data, DragDropEffects.Move);
         }
     }
     _isMouseClicked = false;
 }
 void AssociatedObject_DragEnter(object sender, DragEventArgs e)
 {
     if (this.AssociatedObject.DataContext != null)
     {
         WebPageBaseViewModel dropObject = this.AssociatedObject.DataContext as WebPageBaseViewModel;
         if (dropObject != null)
         {
             if (this.adorner == null)
             {
                 this.adorner = new FrameworkElementAdorner(sender as UIElement);
             }
         }
     }
     e.Handled = true;
 }
示例#8
0
 /// <summary>
 /// Получить таблицу родителя
 /// </summary>
 private string GetTableName(WebPageBaseViewModel parent)
 {
     if (parent == null)
     {
         return(null);
     }
     if (parent is RootPanel)
     {
         return((parent as RootPanel).TableName);
     }
     if (parent is GridViewModel)
     {
         return((parent as GridViewModel).TableName);
     }
     return(GetTableName(parent.Parent));
 }
示例#9
0
        public void TurnGridTest()
        {
            PanelViewModel panelViewModel = new PanelViewModel(_model.RootPanel)
            {
                RuDescription = "Комент", FieldInDb = "Id1"
            };

            _model.RootPanel.Children.Add(panelViewModel);
            ModalViewModel panel1 = new ModalViewModel(panelViewModel)
            {
                Type          = "varchar",
                FieldInDb     = "field2",
                RuDescription = "Комент",
                ControlIdView = "lb2"
            };

            panelViewModel.Children.Add(panel1);
            ModalViewModel panel2 = new ModalViewModel(panelViewModel)
            {
                Type          = "varchar",
                FieldInDb     = "field3",
                RuDescription = "Комент",
                ControlIdView = "lb3"
            };

            panelViewModel.Children.Add(panel2);

            _model.CurrentProperty = panelViewModel;

            int index         = _model.RootPanel.Children.IndexOf(panelViewModel);
            int childrenCount = panelViewModel.Children.Count;

            _model.TurnGrid();

            //Проверяем тип
            WebPageBaseViewModel newModel = _model.RootPanel.Children[index];

            Assert.IsTrue(newModel is GridViewModel);
            //Количество детей
            Assert.AreEqual(childrenCount, newModel.Children.Count);
            //Проверяем родительские колекции
            Assert.AreEqual(childrenCount, panel1.ParentCollection.Count);
            Assert.AreEqual(childrenCount, panel2.ParentCollection.Count);
        }
示例#10
0
        /// <summary>
        /// Создает контрол в режиме View
        /// </summary>
        /// <param name="modalViewModel">Обьект поле</param>
        private void WriteView(WebPageBaseViewModel modalViewModel)
        {
            _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
            string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdView);

            switch (modalViewModel.Type)
            {
            case "int":
            case "varchar":
            case "datetime":
            case "decimal":
            case "dictionary":
                _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "bit":
                _stringBuilder.AppendFormat("<gp:ValidatingBoolLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "file":
                _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "time":
                _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" Format=\"HH:mm:ss\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;

            case "date":
                _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" Format=\"MM.dd.yyyy\"/>\n",
                                            modalViewModel.ControlIdView,
                                            modalViewModel.FieldInDb, caption);
                break;
            }
        }
        void AssociatedObject_DragOver(object sender, DragEventArgs e)
        {
            Type type = typeof(WebPageBaseViewModel);

            //if item can be dropped
            if (e.Data.GetDataPresent(type))
            {
                WebPageBaseViewModel target = this.AssociatedObject.DataContext as WebPageBaseViewModel;
                if (target != null)
                {
                    //give mouse effect
                    this.SetDragDropEffects(e);
                }
                //draw the dots
                if (this.adorner != null)
                {
                    this.adorner.Update();
                }
            }
            e.Handled = true;
        }
        void AssociatedObject_Drop(object sender, DragEventArgs e)
        {
            Type type = typeof(WebPageBaseViewModel);

            //if the data type can be dropped
            if (e.Data.GetDataPresent(type))
            {
                //drop the data
                WebPageBaseViewModel target = this.AssociatedObject.DataContext as WebPageBaseViewModel;
                if (target != null && target.IsDropable)
                {
                    target.Drop((WebPageBaseViewModel)e.Data.GetData(type));
                }
            }
            if (this.adorner != null)
            {
                this.adorner.Remove();
            }

            e.Handled = true;
            return;
        }
示例#13
0
 private void SetParentsCollections(WebPageBaseViewModel parent)
 {
     foreach (WebPageBaseViewModel webPageBaseViewModel in parent.Children)
     {
         //webPageBaseViewModel.ParentCollection = parent.Children;
         webPageBaseViewModel.Parent = parent;
         SetParentsCollections(webPageBaseViewModel);
     }
 }
示例#14
0
 public PanelViewModel(WebPageBaseViewModel parent)
 {
     Parent = parent;
     //ParentCollection = parent?.Children;
     Validate();
 }
示例#15
0
 public PanelViewModel(WebPageBaseViewModel parent)
 {
     Parent = parent;
     //ParentCollection = parent?.Children;
     Validate();
 }
示例#16
0
 /// <summary>
 /// Создает контрол в режиме View
 /// </summary>
 /// <param name="modalViewModel">Обьект поле</param>
 private void WriteView(WebPageBaseViewModel modalViewModel)
 {
     _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
     string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdView);
     switch (modalViewModel.Type)
     {
         case "int":
         case "varchar":
         case "datetime":
         case "decimal":
         case "dictionary":
             _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb, caption);
             break;
         case "bit":
             _stringBuilder.AppendFormat("<gp:ValidatingBoolLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb, caption);
             break;
         case "file":
             _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb, caption);
             break;
         case "time":
             _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" Format=\"HH:mm:ss\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb, caption);
             break;
         case "date":
             _stringBuilder.AppendFormat("<gp:ValidatingLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" Format=\"MM.dd.yyyy\"/>\n",
                 modalViewModel.ControlIdView,
                 modalViewModel.FieldInDb, caption);
             break;
     }
 }
示例#17
0
        /// <summary>
        /// Создает контрол в режиме Edit
        /// </summary>
        /// <param name="modalViewModel">Обьект поле</param>
        private void WriteEdit(WebPageBaseViewModel modalViewModel)
        {
            _stringBuilder.AppendFormat("<%--{0}--%>\n", modalViewModel.RuDescription);
            string caption = string.Format("<%$ Resources: {0}, {1} %>", ResourceNamespace, modalViewModel.ControlIdEdit);
            switch (modalViewModel.Type)
            {
                case "time":
                case "date":
                case "datetime":
                    _stringBuilder.AppendFormat("<gp:ValidatingJsCalendar ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\" ImageUrl=\"~/Images/week_small.gif\"  ValidType=\"FORM_ERROR_TYPE_DATE\" />\n",
                        modalViewModel.ControlIdView,
                        modalViewModel.FieldInDb, caption);
                    break;
                case "int":
                    _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" sqlType=\"Int\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                    modalViewModel.ControlIdView,
                    modalViewModel.FieldInDb, caption);
                    break;
                case "decimal":
                    _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" sqlType=\"Decimal\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                    modalViewModel.ControlIdView,
                    modalViewModel.FieldInDb, caption);
                    break;
                case "varchar":
                    _stringBuilder.AppendFormat("<gp:ValidatingTextBox ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                        modalViewModel.ControlIdView,
                        modalViewModel.FieldInDb, caption);
                    break;
                case "bit":
                    _stringBuilder.AppendFormat("<gp:ValidatingBoolLabel ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                        modalViewModel.ControlIdView,
                        modalViewModel.FieldInDb, caption);
                    break;
                case "file":
                    _stringBuilder.AppendFormat("<gp:ValidatingFileView ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                        modalViewModel.ControlIdView,
                        modalViewModel.FieldInDb, caption);
                    break;
                case "dictionary":
                    _stringBuilder.AppendFormat("<gp:ValidatingDropDawnList ID=\"{0}\" runat=\"server\" SkinID=\"ViewModeSkin\" Caption=\"{2}\" DataBoundField=\"{1}\" EnableDate=\"true\" HistType=\"HISTORY_TYPE_UL\"/>\n",
                        modalViewModel.ControlIdView,
                        modalViewModel.FieldInDb, caption);
                    break;

            }
        }
示例#18
0
 /// <summary>
 /// Получить таблицу родителя
 /// </summary>
 private string GetTableName(WebPageBaseViewModel parent)
 {
     if (parent == null)
         return null;
     if (parent is RootPanel)
         return (parent as RootPanel).TableName;
     if (parent is GridViewModel)
         return (parent as GridViewModel).TableName;
     return GetTableName(parent.Parent);
 }