Inheritance: Gtk.Window
示例#1
0
    static void Main(string[] args)
    {
        Application.Init ();
                    MyMainWindow app = new MyMainWindow ();
                    app.ShowAll ();

                    Application.Run ();
    }
示例#2
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            IDocumentChangeModel model = new CreateAndChangeDocumentsWithStudentInfoModel();

            ChangeDocumentViewModel viewModel = new ChangeDocumentViewModel(model);

            MyMainWindow view = new MyMainWindow(viewModel);

            view.Show();
        }
示例#3
0
        //public static async Task<MainWindow.ResultStatusMarker> SendCommandAsync(string statement) => await MyMainWindow?.SendCommandAsync(statement);

        public static async Task <bool> SendCommandAsyncAndErrorHandle(string statement, bool forceHandshake = false)
        {
            var errorCode = await MyMainWindow?.SendCommandAsync(statement, forceHandshake);

            if (errorCode == 0)
            {
                return(false);
            }
            AppendLog($"\"{statement}\" FAILED, ERROR CODE={errorCode}\r\n");
            return(true);
        }
示例#4
0
 public static void AppendLog(string msg) => MyMainWindow?.AppendLog(msg);
示例#5
0
        private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(titleBox.Text))
                {
                    throw new Exception("Заголовок не может быть пустым.");
                }
                if (string.IsNullOrEmpty(ImageUri))
                {
                    throw new Exception("Выберите изображение.");
                }
                if (string.IsNullOrEmpty(textBox.Text))
                {
                    throw new Exception("Текст не может быть пустым.");
                }
                if (titleBox.Text.Length > 50)
                {
                    throw new Exception("Длина заголовка не может превышать 50 символов.");
                }
                if (ImageUri.Length > 200)
                {
                    throw new Exception("Длина пути к файлу не может превышать 200 символов.");
                }
                if (textBox.Text.Length > 4000)
                {
                    throw new Exception("Длина текста не может превышать 4000 символов.");
                }

                var category = categoryBox.SelectedItem as ComboBoxItem;
                if (category == null)
                {
                    category         = new ComboBoxItem();
                    category.Content = string.Empty;
                }

                var post = new Post()
                {
                    Title     = titleBox.Text,
                    ImagePath = ImageUri,
                    Text      = textBox.Text,
                    Category  = category.Content.ToString(),
                    PostDate  = DateTime.Now
                };

                using (var db = new MyContext())
                {
                    if (db.Posts.Any(p => p.Title.Equals(post.Title)))
                    {
                        throw new Exception("Пост с таким названием уже существует.");
                    }
                    db.Posts.Add(post);
                    db.SaveChanges();
                }

                MyMainWindow.LoadNews();
                Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ошибка", MessageBoxButton.OK);
                return;
            }
        }