Skip Navigation LinksПрограмування > Програмування валідації значень полів

Програмування валідації значень полів


У даній статті ми вивчимо можливості FossLook з валідації значення полів.      Ознайомтеся зі статтею "Програмування в FossLook" для отримання базових знань, необхідних      для розуміння викладеного матеріалу.

У даній статті ми продовжимо роботу над нашою бібліотекою "Моя бібліотека". У нашому розпорядженні є документ такого виду:

Документ FossLook

Припустимо, що вам потрібно валідувати значення поля Термін виконання , щоб зазначена дата не могла бути      менше поточної.

У реалізації даного завдання нам допоможе подія CanSave , яке надається базовим класом картки. Відкрийте файл Form.cs з скрипта картки документа, і додайте заготовку коду:

// "Тег поля Термін виконання"
        DS.TPropertyTag _FromDateTag = Foss.FossDoc.ApplicationServer.Converters.PropertyTag.FromString("0x80790040");

        public override bool CanSave
        {
            get
            {
                bool result = base.CanSave;

                IDocumentCardField documentCardField = Fields[_FromDateTag];
                if (documentCardField != null && documentCardField.Value != null)
                {
                    DateTime selectedDate = (DateTime)documentCardField.Value;
                    if (selectedDate < DateTime.Now)
                    {
                        result &= false;
                        System.Windows.Forms.MessageBox.Show(
                            "Ви вказали дату, яка менше поточної",   
                            "P,Зберегти",                                 
                            System.Windows.Forms.MessageBoxButtons.OK,   
                            System.Windows.Forms.MessageBoxIcon.Warning);
                    }
                }

                return result;
            }
        }

Якщо ви введете дату менше поточної і натиснете на кнопку "Зберегти", документ буде не збережений, а ви побачите на екрані повідомлення такого виду:

Документ FossLook

© 2001-2019 ФОСС-Он-Лайн. Всі права захищені.