ПРИЛОЖЕНИЕ Б «Фрагменты листинга формы frmMain.cs»
public frmMain()
{
frm_Reg DataBaseAcces = new frm_Reg(); DialogResult diagResult = DataBaseAcces.ShowDialog();
if (diagResult == DialogResult.OK)
{
bStart = true;
cs = DataBaseAcces.ConnectionString;
UserID = DataBaseAcces.UserID; InitializeComponent();
CenterToScreen();
}
else if (diagResult == DialogResult.Cancel)
{
this.Dispose();
}
else
{
System.Diagnostics.Debug.Print("Неизвестный результат работы диалогового окна");
this.Dispose();
}
}
///
/// Метод первоначальной загрузки формы
///
private void frmMain_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the 'dBlabDataSet.T_Labs' table. You can move, or remove it, as needed.
//this.t_LabsTableAdapter.Fill(this.dBlabDataSet.T_Labs);
// TODO: This line of code loads data into the 'dBlabDataSet.T_Labs' table. You can move, or remove it, as needed.
//this.t_LabsTableAdapter.Fill(this.dBlabDataSet.T_Labs);
FormOptionDefault(); // Загрузить данные из источника
ChooseDataStorage(_bDataFromDB);
//this.reportViewer1.RefreshReport(); //this.reportViewer1.RefreshReport();
}
///
/// Метод первоначальной настройки элементов управления формы
///
private void FormOptionDefault()
{
tc.TabPages.Clear();
tc.TabPages.Add(tabPage1);
// Создать соединение с базой данных DBlab.
SqlConnection cn = new SqlConnection();
cn.ConnectionString = cs.ToString();
Program.DBlabConnectionString = cs.ToString();
try
{
dBlabDataSet.Clear(); // TODO: This line of code loads data into the 'dBlabDataSet.T_Parameters' table. Youcan move, or remove it, as needed.
this.t_ParametersTableAdapter.Fill(this.dBlabDataSet.T_Parameters);
// TODO: This line of code loads data into the 'dBlabDataSet.T_Stusents' table. You can move, or remove it, as needed.
this.t_StudentsTableAdapter.Fill(this.dBlabDataSet.T_Student);
// TODO: This line of code loads data into the 'dBflabDataSet.T_Prepods' table. You can move, or remove it, as needed.
this.t_ PrepodsTableAdapter.Fill(this.dBlabDataSet.T_Prepods);
// TODO: This line of code loads data into the 'dBlabDataSet.T_Labs' table. You can move, or remove it, as needed.
this.t_LabsTableAdapter.Fill(this.dBlabDataSet.T_Labs);
}
catch (Exception ex)
{
ReportErrorMessage(ex);
}
finally
| {
cn.Close(); // В любом случае закрыть соединение с базой данных
}
} ///
/// Метод выбора источника загрузки данных в приложение
///
/// Загрузить данные из базы данных (true) или из кода для отладки (false)
private void ChooseDataStorage(bool bDataFromDB)
{
if (bDataFromDB)
{
ImportData();
} else
{
//FillDataTest();
}
} ///
/// Метод выводит сообщение об ошибке на основании кода ошибки, полученного от вызывающей процедуры.
/// Способ вывода - на экран и в журнал.
///
/// Описание ошибки
private void ReportErrorMessage(Exception errorToReport)
{
// Показать на экране сообщение, соответствующее коду ошибки.
MessageBox.Show(errorToReport.Message); // Записать факт ошибки в журнал
// Открыть (или создать) файл для вывода информации.
// Файл для чтения и записи, но без возможности совместного использования.
// Сохранить указатель на файл в объекте FileStream
FileInfo f2 = new FileInfo(strErrorLog);
StreamWriter writer = f2.AppendText(); writer.Write(writer.NewLine);
writer.WriteLine("---- Дата: " + DateTime.Now.Day.ToString() + "-" +
DateTime.Now.Month.ToString() + "-" + DateTime.Now.Year.ToString() + " " +
DateTime.Now.Hour.ToString() + ":" + DateTime.Now.Minute.ToString());
writer.WriteLine(errorToReport.Message);
writer.Close(); // Очистить буфер!
} ///
/// Метод загрузки данных из БД и отображение их на гридах
///
private void ImportData()
{
FillData(); // Загрузить данные из БД в DataSet.
SetDataViews(); // Настроить представления.
SetDataSourceDGW(); // Перерисовать гриды.
} ///
/// Метод заполнения таблиц данными
///
| |