Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2015, 13:54   #1
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
По умолчанию WinForms создание диалога

Как создаются диалог инициализировать его и получить данные?

Я создал Form2
Screenshot_4.png
которая вызывается по кнопке из Form1
Вот код обработки ok и cancel
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form2 : Form
    {
        public string textBox;
        public Form2(string s)
        {
            InitializeComponent();
            textBox1.Text = s;
        }

        private void button_Ok_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.OK;
            textBox = textBox1.Text;
            Close();//закрываем окно
        }

        private void button_Cancel_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.Cancel;
            Close();//закрываем окно
        }
    }
}
А вот сам обработчик который создает диалог
Код:
private void button_Dialog_Click(object sender, EventArgs e)
{
    Form2 dlg = new Form2(str);

    //конфигурация
    dlg.Owner = this;
            
    if(dlg.ShowDialog()==DialogResult.OK)
    {

        MessageBox.Show("ok text="+dlg.textBox);
    }
    else
    {
        MessageBox.Show("cancel");
    }
            
}
Это что так сложно создаются диалоги и инициализация в winforms или я что то неправильно делаю??? В WPF это попроще делается, тут все сложнее.
ninja2 вне форума Ответить с цитированием
Старый 05.10.2015, 13:57   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Что-то не увидел ничего сложного. Что в WPF проще?
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 05.10.2015, 14:21   #3
ninja2
Форумчанин
 
Регистрация: 13.08.2015
Сообщений: 193
По умолчанию

Там без конструктора, менше кода в 2 раза
от например нужно создавать
public string textBox; чтобы было доступно dlg.textBox
в обработчике ok нужно присваивать textBox=texBox1.Text

Плюс в самой Form1 тоже самое делать, еще и конструктор

В WPF проще,
там создал dlg и доступны элементы на форме через dlg.texBox1.Text, кода меньше и проще

Последний раз редактировалось ninja2; 05.10.2015 в 14:55.
ninja2 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание немодального диалога в MFC JeyKip Visual C++ 2 05.10.2010 14:13
Дискриптор диалога _Dmitry_ Win Api 7 30.03.2010 01:08
Дискриптор диалога _Dmitry_ Помощь студентам 0 24.03.2010 16:07
Ошибка из-за открытия диалога Marisha* Общие вопросы Delphi 8 12.07.2009 16:15
Создание диалога из длл Oburec Общие вопросы C/C++ 0 27.06.2009 15:29