Лабораторийн ажил 5
Хичээлийн агуулга: Хэрэглэгчийн оролтыг шалгах
Лабораторын ажлын зорилго: Хэрэглэгчийн оруулсан
мэдээлэлийг шалгах бөгөөд оруулсан мэдээлэл
буруу байх тохиолдолд тэр мэдээллийг сануулан
цааш боловсруулалтанд оруулах болгох талаар
судлах болно.

Програмчлалын хэл : C#
Прожект файл үүсгэх:
1.
2.
3.
4.

File->New->Blank Solution сонгоно.
Project types->Visual C# Projects
Templates->Windows Application сонгоно.
Application –ны нэрийг User_input гэж нэрлэнэ.

User_input формд хэрэглэгдэх контролуудын шинж чанарууд:
Контролын нэр
Form

Label1
Label2
TextBox1
TextBox2
Button1

Шинж чанар
Name
auto size
Maximum size
Name
text
Name
text
Name
Name
Name
text

Утгууд
Student
GrowAndShrink
false
дурын
Number(1-10)
дурын
Name(not blank)

Check

Прожектын үндсэн кодын хэсэг
1. User_Input прожектонд дараах нэймспейсүүдийг
хэрэглэнэ.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
2. Классын байгуулагч функц дотор дараах кодыг нэмж өгнө.
this.AutoValidate =
System.Windows.Forms.AutoValidate.Disable;
//autovalidate-г идэвхгүй болгох
3. Check товчин дээр дарахад дараах кодыг бичиж өгнө.
if
(this.ValidateChildren(ValidationConstraints.Enabled))
{
MessageBox.Show("All controls are
valid!");
//бүх талбар хүчинтэй
}
else
{
MessageBox.Show("There are invalid
controls on the form.");
//форм дээр байгаа өгөгдөл буруу байна
}
4. Текст1- ын validating үзэгдэл дээр дараах кодыг бичиж өгнө.
bool cancel = false;
int number = -1;

this.errorProvider1.SetError(this.textBoxNumber, "та заавал
өгөгдсөн хязга”р дотор тоо бичнэ үү");
}
e.Cancel = cancel;

5. Текст1- ын validated үзэгдэл дээр дараах кодыг бичиж өгнө.
private void textBox1_VisibleChanged(object sender, EventArgs
e)
{
//контрол баталгаажсан, ямар нэгэн алдааны
мэдээллийг устгана.
this.errorProvider1.SetError(this.textBoxNumber,
string.Empty);
}

if (int.TryParse(this.textBoxNumber.Text, out
number))

6. Текст2- ын validating үзэгдэл дээр дараах кодыг бичиж өгнө.

{
if (number > 0 && number < 11)
{
//контролыг баталгаажүүлна
cancel = false;
}
else
{
//энэ хэсэгт баталгаажилтын алдаа гарах
мэдээлэл
гарна.бичигдсэн тоо хүчинтэй хязгаар
дотор бус байна.
cancel = true;
this.errorProvider1.SetError(this.textBoxNumber, "та 1-10
хүртэлх тоог оруулна уу");
}
}
else
{
//энэ хэсэгт баталгаажилтын алдаа гарах
мэдээлэл гарна.текстын утга тоо биш байна.
cancel = true;

bool cancel = false;
if
(string.IsNullOrEmpty(this.textBoxName.Text))
{
//энэ контрол баталгаажилтын алдаатай.
cancel = true;
this.errorProvider1.SetError(this.textBoxName, "Тан заавал
тэмдэгт төрлийн нэрийг бичиж өгнө үү");
}
e.Cancel = cancel;

Лабораторын ажлаар гүйцэтгэх даалгаварууд
1. Лабораторын ажил1-н хэрэглэгчийн оролтыг шалга.
2. Лабораторийн ажлын гүйцэтгэлийг 10 сарын 12-ны өдрөөс
өмнө шалгуулна уу!.

Лабораторийн ажил 5

  • 1.
    Лабораторийн ажил 5 Хичээлийнагуулга: Хэрэглэгчийн оролтыг шалгах Лабораторын ажлын зорилго: Хэрэглэгчийн оруулсан мэдээлэлийг шалгах бөгөөд оруулсан мэдээлэл буруу байх тохиолдолд тэр мэдээллийг сануулан цааш боловсруулалтанд оруулах болгох талаар судлах болно. Програмчлалын хэл : C# Прожект файл үүсгэх: 1. 2. 3. 4. File->New->Blank Solution сонгоно. Project types->Visual C# Projects Templates->Windows Application сонгоно. Application –ны нэрийг User_input гэж нэрлэнэ. User_input формд хэрэглэгдэх контролуудын шинж чанарууд: Контролын нэр Form Label1 Label2 TextBox1 TextBox2 Button1 Шинж чанар Name auto size Maximum size Name text Name text Name Name Name text Утгууд Student GrowAndShrink false дурын Number(1-10) дурын Name(not blank) Check Прожектын үндсэн кодын хэсэг 1. User_Input прожектонд дараах нэймспейсүүдийг хэрэглэнэ. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; 2. Классын байгуулагч функц дотор дараах кодыг нэмж өгнө. this.AutoValidate = System.Windows.Forms.AutoValidate.Disable; //autovalidate-г идэвхгүй болгох 3. Check товчин дээр дарахад дараах кодыг бичиж өгнө.
  • 2.
    if (this.ValidateChildren(ValidationConstraints.Enabled)) { MessageBox.Show("All controls are valid!"); //бүхталбар хүчинтэй } else { MessageBox.Show("There are invalid controls on the form."); //форм дээр байгаа өгөгдөл буруу байна } 4. Текст1- ын validating үзэгдэл дээр дараах кодыг бичиж өгнө. bool cancel = false; int number = -1; this.errorProvider1.SetError(this.textBoxNumber, "та заавал өгөгдсөн хязга”р дотор тоо бичнэ үү"); } e.Cancel = cancel; 5. Текст1- ын validated үзэгдэл дээр дараах кодыг бичиж өгнө. private void textBox1_VisibleChanged(object sender, EventArgs e) { //контрол баталгаажсан, ямар нэгэн алдааны мэдээллийг устгана. this.errorProvider1.SetError(this.textBoxNumber, string.Empty); } if (int.TryParse(this.textBoxNumber.Text, out number)) 6. Текст2- ын validating үзэгдэл дээр дараах кодыг бичиж өгнө. { if (number > 0 && number < 11) { //контролыг баталгаажүүлна cancel = false; } else { //энэ хэсэгт баталгаажилтын алдаа гарах мэдээлэл гарна.бичигдсэн тоо хүчинтэй хязгаар дотор бус байна. cancel = true; this.errorProvider1.SetError(this.textBoxNumber, "та 1-10 хүртэлх тоог оруулна уу"); } } else { //энэ хэсэгт баталгаажилтын алдаа гарах мэдээлэл гарна.текстын утга тоо биш байна. cancel = true; bool cancel = false; if (string.IsNullOrEmpty(this.textBoxName.Text)) { //энэ контрол баталгаажилтын алдаатай. cancel = true; this.errorProvider1.SetError(this.textBoxName, "Тан заавал тэмдэгт төрлийн нэрийг бичиж өгнө үү"); } e.Cancel = cancel; Лабораторын ажлаар гүйцэтгэх даалгаварууд 1. Лабораторын ажил1-н хэрэглэгчийн оролтыг шалга. 2. Лабораторийн ажлын гүйцэтгэлийг 10 сарын 12-ны өдрөөс өмнө шалгуулна уу!.