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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2008, 20:12   #1
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию данные между формами

есть две формы
на первой есть richTextBox1 и переменная X
как получить свойство Text компонента richTextBox1 первой формы со второй формы и переменную?
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 02.12.2008, 13:00   #2
Hollander
Участник клуба
 
Аватар для Hollander
 
Регистрация: 03.05.2007
Сообщений: 1,189
По умолчанию

на 1 форме сделай
public string GetText
{
get {return richTextBox1.Text}
}
а на второй форме вызывай объект_первой_формы.GetText();
Hollander вне форума Ответить с цитированием
Старый 02.12.2008, 15:10   #3
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

немного с вызовом непонятно...
разъясни на примере вызов плз
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 02.12.2008, 15:18   #4
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Hollander Посмотреть сообщение
на 1 форме сделай
public string GetText
{
get {return richTextBox1.Text}
}
а на второй форме вызывай объект_первой_формы.GetText();
проще у richTextBox1 свойство Modifier поставить в public
pu4koff вне форума Ответить с цитированием
Старый 02.12.2008, 15:22   #5
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

мб, а переменную как вызвать?
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 02.12.2008, 15:25   #6
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от TaTT DoGG Посмотреть сообщение
немного с вызовом непонятно...
разъясни на примере вызов плз
форма2 должна знать экземпляр класса формы1. и через этот экземпляр (объект) происходит вызов.

ЗЫ. C# - сплошное ООП, а у Вас с ним видимо неочень. Лучше бы подучить. Как на делфях глобальные переменные здесь не прокатят. Передавайте в форму2 объект формы1 и усё будет красиво и просто

ЗЫ2. попробуйте поискать форму1 через класс Application). В нём была коллекция что-то вроде Forms или OpenForms, но придётся приводить типы скорее всего и я Вам этого не говорил, т.к. это некрасиво
pu4koff вне форума Ответить с цитированием
Старый 02.12.2008, 15:27   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

вообще чуть ниже имеется аналогичная по сути тема:
http://programmersforum.ru/showthread.php?t=31302
pu4koff вне форума Ответить с цитированием
Старый 02.12.2008, 15:53   #8
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Старый 02.12.2008, 16:14   #9
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Код:
...
public class Form1: Form
{
  // Создание и отображение формы2 из формы1
  ...
  Form2 form2 = new Form2(this);
  form2.Show();
}
Код:
...
public class Form2: Form
{
  private Form1 _form1;

  public Form2(Form1 form1)
  {
    _form1 = form1;
  }

  public Form1 Form1
  {
    get
    {
      return _form1;
    }
    set
    {
      _form1 = value;
    }
  }
  // Определение текста из контрола формы1
  ...
  label1.Text = Form1.richTextBox1.Text; // richTextBox1 должен быть public
  ...
}
pu4koff вне форума Ответить с цитированием
Старый 02.12.2008, 17:40   #10
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

немного переделал:
Форма 1:
Код:
public class Form1: Form
{
  Form2 form2 = new Form2(this);
  form2.Show();
}
Форма 2
Код:
public class Form2: Form
{
  public Form1 form1;

  public Form2(Form1 form1)
  {
    InitializeComponent();
    _form1 = form1;
  }
  
  //вынимаю переменную Х из первой формы
  MessageBox.Show(form1.x);
}
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связь между формами KiberJo Общие вопросы Delphi 20 22.07.2008 21:40
Обмен данными между формами Maks1978 Общие вопросы C/C++ 3 22.07.2008 15:35
Как грамотно разделить данные между потоками? bagulma Общие вопросы Delphi 5 28.05.2008 22:41
Обмен данными между формами Demien Общие вопросы Delphi 14 23.04.2008 22:04
Общение между формами kate4ka Общие вопросы Delphi 2 10.03.2008 22:49