Ejemplo n.º 1
0
        // Инициируем соединение с сервером
        private void initConnection()
        {
            // Провайдер бд
            provider = DbProviderFactories.GetFactory("Npgsql");

            // Создаём соединение
            connection = provider.CreateConnection();

            // Устанавливаем строку соединения
            connection.ConnectionString = СonfigСonnectionWindow.getConnectionString();

            // Передаём connection в EF
            context = new EntityContext(connection);

            grid = new DataGridView();
            Layout.Children.Add(grid);
            Grid.SetRow(grid, 1);
            Grid.SetColumn(grid, 1);

            // Норма
            grid.Change <Teacher>(context.teacher);

            // Reflection
            //System.Reflection.MethodInfo change = grid.GetType().GetMethod("Change");
            //System.Reflection.MethodInfo genericChange = change.MakeGenericMethod(context.regulation.FirstOrDefault().GetType());
            //genericChange.Invoke(grid, new object[] { context.regulation });
        }
Ejemplo n.º 2
0
        public MainWindow()
        {
            InitializeComponent();

            // События контекстного меню
            connectionSetting.Click += (obj, sndr) => new СonfigСonnectionWindow().ShowDialog();

            exitApp.Click  += (obj, sndr) => App.Current.Shutdown();
            aboutApp.Click += (obj, sndr) => new AboutWindow().Show();

            addTeacher.Click         += (obj, sndr) => new NewTeacherWindow(context).ShowDialog();
            addClassroom.Click       += (obj, sndr) => new NewClassroomWindow(context).ShowDialog();
            addGroup.Click           += (obj, sndr) => new NewGroupWindow(context).ShowDialog();
            addLessonsSchedule.Click += (obj, sndr) => new NewLessonsScheduleWindow(context).ShowDialog();
            addSubject.Click         += (obj, sndr) => new NewSubjectWindow(context).ShowDialog();
            addSpecialty.Click       += (obj, sndr) => new NewSpecialtyWindow(context).ShowDialog();
            addWorkPlan.Click        += (obj, sndr) => new NewWorkPlanWindow(context).ShowDialog();
            addRegulation.Click      += (obj, sndr) => new NewRegulationWindow(context).ShowDialog();

            printSetting.Click += (obj, sndr) =>
            {
                PrintDialog printDlg = new PrintDialog();
                printDlg.ShowDialog();
                printDlg.PrintVisual(grid, "Печать...");
            };

            // Если файла xml нет, создать новый файл (настройки соединения с сервером)
            if (!File.Exists(App.xmlFileName))
            {
                XMLconnection.CreateConnectionXML();
            }

            // Проверяем соединение, если нету - показать модальное окно с настройками
            if (!СonfigСonnectionWindow.testConection())
            {
                System.Diagnostics.Debug.WriteLine("Нет соединения, открыть настройки");

                СonfigСonnectionWindow settingWindow = new СonfigСonnectionWindow();
                settingWindow.ConnectionComplite += (obj, sndr) => initConnection();
                settingWindow.ShowDialog();
            }
            else
            {
                initConnection();
            }
        }