Ejemplo n.º 1
0
        private void InsertImageButton_Click(object sender, System.EventArgs e)
        {
            using (var dialog = new OpenFileDialog
            {
                Filter = @"Image Files(*.BMP;*.JPG;*.PNG)|*.BMP;*.JPG;*.PNG|All files (*.*)|*.*"
            })
            {
                var dialogResult = dialog.ShowDialog();

                if (dialogResult != DialogResult.OK)
                {
                    return;
                }

                var resultFileName = SaveImage(dialog.FileName);

                var task = (Task)TestCreatorPanel.Tag;

                var imageTaskElement = new ImageTaskElement
                {
                    ImageName = resultFileName,
                    Height    = 300,
                    Width     = 300
                };

                task.ImageTaskElements.Add(imageTaskElement);

                var pictureBox = CreatePictureBox(imageTaskElement);

                TestCreatorPanel.Controls.Add(pictureBox);
            }
        }
Ejemplo n.º 2
0
        private static PictureBox CreatePictureBox(ImageTaskElement element)
        {
            var bitmap = new ImageDevidedFileService(ConfigContainer.GetConfig <EditorConfig>().SaveFolder).LoadAsBitmap(element.ImageName);

            //TODO Сделать адекватное изменение размеров изображения

            var pictureBox = new PictureBox
            {
                Image    = bitmap,
                Height   = element.Height,
                Width    = element.Width,
                Location = element.Point,
                Tag      = element
            };

            //TODO Добавить обработку событий драг эн дроп
            //TODO Добавть контекстное меню с удалением. Можно скопировать из CreateAnswerRichTextBox

            return(pictureBox);
        }