Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Программный код Form1.cs




using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.IO;

using System.Windows.Forms;

 

namespace ConsoleApplication1

{

public partial class Form1: Form

{

public Form1()

{

InitializeComponent();

 

Account_Dict = new Dictionary<string, Account>();

 

//загрузка в словарь из файла

LoadDictionary();

 

DataTable_Account = new DataTable(); //классический datatable

//проверка логина и пароля

DataColumn column1 = new DataColumn();

column1.ColumnName = "Логин";

column1.DataType = typeof(string);

column1.AllowDBNull = true;

column1.ReadOnly = false;

column1.DefaultValue = DBNull.Value;

DataTable_Account.Columns.Add(column1);

 

DataColumn column2 = new DataColumn();

column2.ColumnName = "Пароль";

column2.DataType = typeof(string);

column2.AllowDBNull = true;

column2.ReadOnly = false;

column2.DefaultValue = DBNull.Value;

DataTable_Account.Columns.Add(column2);

 

dgv_Account.DataSource = DataTable_Account; //связка таблы с данными

 

//апдейт таблы

UpdateDGV();

}

 

public void UpdateDGV()

{

if (Account_Dict!= null)

{

if (dgv_Account == null ||!dgv_Account.InvokeRequired)

{

DataTable_Account.Rows.Clear(); //вычистим таблу

foreach (Account acc in Account_Dict.Values)

{//перебор

DataRow Row = DataTable_Account.NewRow();

Row.SetField<string>("Логин", acc.Login);

Row.SetField<string>("Пароль", acc.Password);

DataTable_Account.Rows.Add(Row);

}

}

else

if (dgv_Account.InvokeRequired)

{//DGV в связке есть и требует потокосинхронизации

ToChangeDGVAccountCallback d = new ToChangeDGVAccountCallback(UpdateDGV);

dgv_Account.Invoke(d, new object[] { });

}

}

}

//обеспечиватеся доступ к элементам управления из другого потока

delegate void ToChangeDGVAccountCallback();

 

DataTable DataTable_Account = null;

Dictionary<string, Account> Account_Dict;

string FileNameXML = "Account.xml";

 

private void button1_Click(object sender, EventArgs e)

{

Account Account = null;

if (Account_Dict!= null)

{//есть словарь

if (Account_Dict.TryGetValue(textBox1.Text, out Account))

{

if (Account.Password == textBox2.Text)

{

//совпал пассворд

MessageBox.Show("Yes");

label1.Visible = false;

label2.Visible = false;

label3.Visible = false;

label4.Visible = false;

label5.Visible = false;

label6.Visible = false;

button1.Visible = false;

button2.Visible = false;

button3.Visible = false;

button4.Visible = false;

button5.Visible = false;

button6.Visible = false;

button7.Visible = true;

button8.Visible = true;

button9.Visible = true;

button10.Visible = true;

button16.Visible = true;

textBox1.Visible = false;

textBox2.Visible = false;

tb_Login.Visible = false;

tb_Password.Visible = false;

adm_Login.Visible = false;

adm_Password.Visible = false;

this.Text = "Главное меню";

 

}

else MessageBox.Show("No");

textBox2.Text = ("");

}

 

//апдейт таблы

UpdateDGV();

}

}

private void button3_Click(object sender, EventArgs e)

{

//зарегистрирования логина и пароля и видимы не видимы компоненты

label1.Visible = true;

label2.Visible = true;

button1.Visible = true;

button2.Visible = true;

button2.Enabled = false;

button3.Visible = false;

button4.Visible = true;

button5.Visible = false;

textBox1.Visible = true;

textBox2.Visible = true;

label3.Visible = false;

label4.Visible = false;

tb_Login.Visible = false;

tb_Password.Visible = false;

{

 

Account Account = null;

if (Account_Dict!= null)

{//есть словарь

if (Account_Dict.TryGetValue(tb_Login.Text, out Account))

{

//есть такой ключ, т.е. логин

 

 

}

else

{ //ключа нет, т.е. логина - запишем

Account_Dict[tb_Login.Text] = new Account(tb_Login.Text, tb_Password.Text);

//запись по новой в файл

string res = SaveDictionary();

}

}

 

//апдейт таблы

UpdateDGV();

 

}

}

 

 

private void button2_Click(object sender, EventArgs e)

{

//регистрация логина и пароля

label1.Visible = false;

label2.Visible = false;

button1.Visible = false;

button2.Visible = false;

textBox1.Visible = false;

textBox2.Visible = false;

label3.Visible = true;

label4.Visible = true;

button3.Visible = true;

button4.Visible = false;

button5.Visible = true;

tb_Login.Visible = true;

tb_Password.Visible = true;

tb_Login.Text = ("");

tb_Password.Text = ("");

}

 

 

//сохранение словаря в XML

public string SaveDictionary()

{

string res="";

if (Account_Dict!= null)

{

List<Account> l_T2 = new List<Account>(); //список

 

foreach (Account obj_T2 in Account_Dict.Values)

{

l_T2.Add(obj_T2); //составим список объектов из словаря

}

 

res = Serializer.SaveListToXml<Account>(FileNameXML, l_T2);//список объектов в xml

}

return res;

}

 

 

//загрузка словаря из файла

public void LoadDictionary()

{

List<Account> l_T2 = new List<Account>(); //список

l_T2 = Serializer.LoadListFromXml<Account>(FileNameXML); //получим все T2 в список

 

if(l_T2!=null)

{

foreach (Account o_T2 in l_T2)

{

Account_Dict[o_T2.Login] = o_T2;

}

}

}

 

private void button6_Click(object sender, EventArgs e)

{

//проверка логира и пароля, администратора

string login;

string pass;

StreamReader s = new StreamReader(Application.StartupPath + "\\admin.txt");

login = s.ReadLine();

pass = s.ReadLine();

s.Close();

if ((adm_Login.Text == login) && (adm_Password.Text == pass))

{

//пароль совпал

MessageBox.Show("Yes");

dgv_Account.Visible = true;

adm_Login.Text = ("");

adm_Password.Text = ("");

button6.Enabled = false;

}

//пароль не совпал

else MessageBox.Show("No");

adm_Login.Text = ("");

adm_Password.Text = ("");

}

 

private void button4_Click_1(object sender, EventArgs e)

{

//Появления администраторского окна

dgv_Account.Visible = false;

label1.Visible = false;

label2.Visible = false;

label3.Visible = false;

label4.Visible = false;

label5.Visible = true;

label6.Visible = true;

adm_Login.Visible = true;

adm_Password.Visible = true;

button1.Visible = false;

button2.Visible = false;

button3.Visible = false;

button5.Visible = true;

button6.Visible = true;

button6.Enabled = true;

tb_Login.Visible = false;

tb_Password.Visible = false;

textBox1.Visible = false;

textBox2.Visible = false;

adm_Login.Text = ("");

adm_Password.Text = ("");

}

 

private void button5_Click_1(object sender, EventArgs e)

{

//Назад к первоначальной формы, с помощью свойства "Visible", очистка тексбокса.

dgv_Account.Visible = false;

label1.Visible = true;

label2.Visible = true;

label3.Visible = false;

label4.Visible = false;

label5.Visible = false;

label6.Visible = false;

button1.Visible = true;

button2.Visible = true;

button3.Visible = false;

button4.Visible = true;

button5.Visible = false;

button6.Visible = false;

tb_Login.Visible = false;

tb_Password.Visible = false;

textBox1.Visible = true;

textBox1.Text = ("");

textBox2.Visible = true;

textBox2.Text = ("");

adm_Login.Visible = false;

adm_Password.Visible = false;

}

 

private void Form1_Load(object sender, EventArgs e)

{

// TODO: данная строка кода позволяет загрузить данные в таблицу "microsoft_Office_Access_2007_База_данныхDataSet.Справки". При необходимости она может быть перемещена или удалена.

this.справкиTableAdapter.Fill(this.microsoft_Office_Access_2007_База_данныхDataSet.Справки);

// TODO: данная строка кода позволяет загрузить данные в таблицу "microsoft_Office_Access_2007_База_данныхDataSet.Работа". При необходимости она может быть перемещена или удалена.

this.работаTableAdapter.Fill(this.microsoft_Office_Access_2007_База_данныхDataSet.Работа);

// TODO: данная строка кода позволяет загрузить данные в таблицу "microsoft_Office_Access_2007_База_данныхDataSet.Работадатель". При необходимости она может быть перемещена или удалена.

this.работадательTableAdapter.Fill(this.microsoft_Office_Access_2007_База_данныхDataSet.Работадатель);

// TODO: данная строка кода позволяет загрузить данные в таблицу "microsoft_Office_Access_2007_База_данныхDataSet.Диплом". При необходимости она может быть перемещена или удалена.

this.дипломTableAdapter.Fill(this.microsoft_Office_Access_2007_База_данныхDataSet.Диплом);

// TODO: данная строка кода позволяет загрузить данные в таблицу "microsoft_Office_Access_2007_База_данныхDataSet.Клиент". При необходимости она может быть перемещена или удалена.

this.клиентTableAdapter.Fill(this.microsoft_Office_Access_2007_База_данныхDataSet.Клиент);

 

 

}

 

private void button11_Click(object sender, EventArgs e)

{

//сохранения базы данных в таблице клиент

клиентTableAdapter.Update(microsoft_Office_Access_2007_База_данныхDataSet.Клиент);

}

 

private void button7_Click(object sender, EventArgs e)

{

//включение выключение данных таблиц, по нажатию кнопки "поиска работы"

Control[] ctr2 = tabControl1.Controls.Find("tabPage1", false);

ctr2[0].Enabled = true;

Control[] ctr3 = tabControl1.Controls.Find("tabPage2", false);

ctr3[0].Enabled = true;

Control[] ctr4 = tabControl1.Controls.Find("tabPage5", false);

ctr4[0].Enabled = true;

Control[] ctr = tabControl1.Controls.Find("tabPage3",false);

ctr[0].Enabled = false;

Control[] ctr1 = tabControl1.Controls.Find("tabPage4", false);

ctr1[0].Enabled = false;

//некоторые компоненты становятся видимы

tabControl1.Visible = true;

textBox3.Visible = true;

textBox4.Visible = true;

textBox5.Visible = true;

textBox6.Visible = true;

textBox7.Visible = true;

//меняется имя формы

this.Text = "Главное меню - Поиск работы";

}

 

private void button12_Click(object sender, EventArgs e)

{

//сохранения базы данных в таблице диплома

дипломTableAdapter.Update(microsoft_Office_Access_2007_База_данныхDataSet.Диплом);

}

 

private void button13_Click(object sender, EventArgs e)

{

//сохранения базы данных в таблице работадателя

работадательTableAdapter.Update(microsoft_Office_Access_2007_База_данныхDataSet.Работадатель);

}

 

private void button14_Click(object sender, EventArgs e)

{

//сохранения базы данных в таблице работы

работаTableAdapter.Update(microsoft_Office_Access_2007_База_данныхDataSet.Работа);

}

 

private void button15_Click(object sender, EventArgs e)

{

//сохранения базы данных в таблице справки

справкиTableAdapter.Update(microsoft_Office_Access_2007_База_данныхDataSet.Справки);

}

 

private void button8_Click(object sender, EventArgs e)

{

//включение выключение данных таблиц, по нажатию кнопки "Добавления объявления о работе"

Control[] ctr = tabControl1.Controls.Find("tabPage3", false);

ctr[0].Enabled = true;

Control[] ctr1 = tabControl1.Controls.Find("tabPage4", false);

ctr1[0].Enabled = true;

Control[] ctr2 = tabControl1.Controls.Find("tabPage1", false);

ctr2[0].Enabled = false;

Control[] ctr3 = tabControl1.Controls.Find("tabPage2", false);

ctr3[0].Enabled = false;

Control[] ctr4 = tabControl1.Controls.Find("tabPage5", false);

ctr4[0].Enabled = false;

tabControl1.Visible = true;

//меняется имя формы

this.Text = "Главное меню - Добавления объявления о работе";

}

 

private void button16_Click(object sender, EventArgs e)

{

//Выход из формы

this.Close();

}

}

}

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...