예제 #1
0
        /// <summary>
        /// Создание нового раздела или изменение данного.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void actionButton_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(nameTextBox.Text))
            {
                MessageBox.Show("Введите имя раздела!");
                return;
            }

            string name      = nameTextBox.Text;
            int    sortIndex = (int)sortIndexNumericUpDown.Value;

            if (_isChanging)
            {
                if (!SectionController.CanUpdateSection((IStorable)_treeNode.Parent.Tag, _sectionModel, name))
                {
                    MessageBox.Show("Раздел с таким же именем уже существует!", "Ошибка!", MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);

                    return;
                }

                SectionController.UpdateSection(_sectionModel, name, sortIndex);
                _treeNode.Text = nameTextBox.Text;
            }
            else
            {
                if (!SectionController.CanCreateSection((IStorable)_treeNode.Tag, name))
                {
                    MessageBox.Show("Раздел с таким же именем уже существует!", "Ошибка!", MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);

                    return;
                }

                SectionModel sectionModel = SectionController.CreateSection((IStorable)_treeNode.Tag, name, sortIndex);
                NodeController.CreateNode(_treeNode, sectionModel);
            }

            this.Close();
        }
예제 #2
0
        /// <summary>
        /// Генерация товаров и разделов в количестве, которое указал пользователь.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void generateButton_Click(object sender, EventArgs e)
        {
            Random    random    = new Random();
            IStorable iStorable = (IStorable)_treeNode.Tag;

            int numberOfSections = (int)sectionNumericUpDown.Value;
            int numberOfProducts = (int)productNumericUpDown.Value;

            for (int i = 0; i < numberOfSections; i++)
            {
                SectionModel sectionModel =
                    SectionController.CreateSection(iStorable, random.Next().ToString(), 0);
                TreeNode treeNode = NodeController.CreateNode(_treeNode, sectionModel);

                for (int j = 0; j < numberOfProducts; j++)
                {
                    ProductModel productModel    = ProductController.CreateRandomProduct(sectionModel);
                    TreeNode     productTreeNode = NodeController.CreateNode(treeNode, productModel);
                    ProductController.AssignProductToNode(productModel, productTreeNode);
                }
            }

            this.Close();
        }