powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Form2 неправильно заполняется данными кодом из Form1
31 сообщений из 31, показаны все 2 страниц
Form2 неправильно заполняется данными кодом из Form1
    #38826671
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Т.е. есть Form2, на ней элементы(много) скажем ComboBox1, ComboBox2
Элементам Form2 изначально заданы какие-то значения в конструкторе
ComboBox1.text="test1"
ComboBox2.text="test2"

Я вызываю Form2 из Form1 и пытаюсь заполнить значения элементов на Form2:
Грубо
Код: vbnet
1.
2.
3.
4.
5.
6.
 Private Sub ButtonEdit_Click(sender As Object, e As EventArgs) Handles ButtonEdit.Click
    Dim Form2 As New frm2
    Form2.ComboBox1.text="test1_new"
    Form2.ComboBox2.text="test2_new"
...
    Form2.ShowDialog(Me)



Так вот, у меня может в ComboBox2 оказаться дефолтное "test2" вместо "test2_new"
Т.е. какие-то элементы на Form2 заполняются как хочу, а какие-то этим кодом не хотят.
Подозреваю что "test2" в frm2.InitializeComponent может установиться позже чем я задаю "test2_new"
И от чего зависит - не понимаю.
В VB6 такой фигни не было.
Элементов много, код большой, на тест-примере не воспроизведешь.

Как вариант могу конечно заполнение делать в Load в Form2, а не из Form1 до Form2.ShowDialog,
но это гимор.

Т.е. мне нужна такая последовательность:
1) Form2 проинициализировалась дефолтом
2) Я заполнил Form2 из Form1
3) Я показал Form2 модально

А у меня похоже конкурентная борьба из 2-х потоков "кто кого".
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826699
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,
освойте биндин или бандинг (как удобней называть), и насаживайте контролы на модель, то что вы делаете - это тонны запутанного говнокода с непрозрачным результатом, так уж давно никто не пишет.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826707
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,

причем здесь ваш бандинг. У меня конкретная задача -на полдня даже если и "гавнокодом" и гораздо быстрее если найдется кто-то кто по делу подскажет а вы мне предлагаете какие-то "технологии" изучать.

Я конкретный вопрос задал.
И видимых путей так понимаю 2:
1) понятный: заполнять элементы Form2 из кода frm2_Load (чтоб она уже была "проинициализирована" дефолтом на этот момент)
2) дурной: не задавать ComboBox2.text в конструкторе (правда дефолты придется задавать тогда отдельным кодом)

А надо мне по сути:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
 Private Sub ButtonEdit_Click(sender As Object, e As EventArgs) Handles ButtonEdit.Click
    Dim Form2 As New frm2
    инициализируйся, дура и больше не переопределяй сама то что ниже
    Form2.ComboBox1.text="test1_new"
    Form2.ComboBox2.text="test2_new"
...
    Form2.ShowDialog(Me)
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826729
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, поменял вот так. Вроде все встало на свои места.

1) понятный: заполнять элементы Form2 из кода frm2_Load (чтоб она уже была "проинициализирована" дефолтом на этот момент)

Хватает все-таки в .Net дебилизма.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826781
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,

скорее что то у тебя не так
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826789
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дмитрий,

1

Вот строка из вашего кода

Form2.ShowDialog(Me)

Это строка обозначает что вы "передаете" доступ к форме 1 / форму

Написав этот код вы можете использовать все свойства формы 1, ее объеты на форме 2.

2

Поэтому необходимость вот в этом как выразились выше говнокоде отпадает

Form2.ComboBox1.text="test1_new"
Form2.ComboBox2.text="test2_new

3

Что нужно чтобы иметь доступ к форме 1 на форме 2

Необходимо дописать Dim frm1 as form = me.Owner (Писал на память мог где то ошибиться)


Надеюсь это поможет.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826801
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Артем GЧто нужно чтобы иметь доступ к форме 1 на форме 2

Необходимо дописать Dim frm1 as form = me.Owner (Писал на память мог где то ошибиться)

Нет, нет - этого не надо.
Form1 в данном случае конкретный экземпляр а не класс.
16780516
С обращением к Form1 из Form2 проблем нет, я так пока и сделал.

Непонятно почему я не могу "без глюков" и с гарантией заполнить Form2 из Form1
до строчки
Form2.ShowDialog(Me)
(после естественно тоже не могу, т.к. это модальный вызов)

То бишь по какой-то причине
Form2.ComboBox1.text="test1_new"
Form2.ComboBox2.text="test2_new"

могут запросто перезаписаться значениями из конструктора, т.е. из функции frm2.InitializeComponent

По логике первое обращение
Dim Form2 As New frm2
должно ее "инициализировать" дефолтом, а оно по ходу туда может полезть и перезаписать дефолт test1 поверх test1_new.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826877
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77А у меня похоже конкурентная борьба из 2-х потоков "кто кого".А вот с этого места поподробнее.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826965
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Не цепляйся к словам.
Там происходит примерно следующее.

Код: vbnet
1.
2.
3.
4.
5.
6.
 Private Sub ButtonEdit_Click(sender As Object, e As EventArgs) Handles ButtonEdit.Click
    Dim Form2 As New frm2
...
    Form2.ComboBox2.text="test2_new"
...
    Form2.ShowDialog(Me)


'для frm2
Код: vbnet
1.
2.
  Private Sub InitializeComponent()
Me.Form2.ComboBox2.text="test2"


Больше свойство text нигде не устанавливается - я проверял

Я нарочно добавил в ComboBox2_textchanged
Debug.Print (ComboBox2.text)

Распечатывает
test2
test2_new
(и все - к чему претензий нет)
а потом выводит форму со значением "test2"
А вот это уже мистика.

Сделал предположение что ComboBox2 себя каким-то волшебным образом перерисовывает (за .Net такая фигня замечена)...
Дернул .handle чтобы это понять:
Код: vbnet
1.
2.
 в ComboBox2_textchanged
Debug.Print (ComboBox2.text & " " ComboBox2.handle)"


Так он сволочь после этого "дерганья" стал выводить "test2_new" (как я хотел)

Еще могу сказать, что я в коде играюсь с Enabled true/false для этого Combo, но что-то сомневаюсь что это как-то может влиять.
Хорошо б конечно воспроизвести на тесте, но это придется попотеть и надо ли.
В принципе если запрашивать данные из Form2_Load как сам предположил а потом и выше советовали то все четко.

Но согласись, напрягает когда делаешь все логически правильно, а результат по мистическим причинам не соответствует ожиданию.

У меня нет идей где у меня что не так.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826968
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77, а я и не цепляюсь. Судя по всему Вы в своем коде чего-то нахимичили. Вот и хотелось понять, что.

Почему свойство text пишете с маленькой буквы? Зачем Вы вообще его задаете ComboBox-у?

Посмотрите декомпайлером, что происходит в тех свойствах, с которыми играетесь. Чудес не бывает.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826973
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПочему свойство text пишете с маленькой буквы?
VB.Net же вроде регистронезависим. А на CLR Compliant автору с такими задачами похоже дофени.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38826975
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,
Только ли в ComboBox'ах возникают проблемы? Какой DropDownStyle у ComboBox'ов? Каким образом вы заполняете данные в ComboBox'ах? Через DataSource? Через Items.Add?
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827500
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Combo стиль DropDown.
Т.е. можем выбирать из списка, либо задавать .Text не из списка (любой).

Короче ловите воспроизведение бага:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
'Конструктор:

Partial Class Form2
...
    Private Sub InitializeComponent()
    Me.ComboBox1 = New System.Windows.Forms.ComboBox()
    Me.SuspendLayout()
    '
    'ComboBox1
    '
    Me.ComboBox1.Items.AddRange(New Object() {"test1", "test2", "test3", "test4", "test5"})
    Me.ComboBox1.Location = New System.Drawing.Point(66, 46)
    Me.ComboBox1.Name = "ComboBox1"
    Me.ComboBox1.Size = New System.Drawing.Size(122, 21)
    Me.ComboBox1.TabIndex = 9
    Me.ComboBox1.Text = "test1"

'===========================

Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim frm2 As New Form2
    frm2.ComboBox1.Text = "test1_new"
    frm2.ShowDialog()
  End Sub
End Class



Я поигрался, существенно следующее.
1) Дефолтное Me.ComboBox1.Text ="test1" должно присутствовать в списке "test1", "test2", "test3", "test4", "test5"
2) Задаваемое frm2.ComboBox1.Text = "test1_new" должно отсутствовать в списке.

Если например я устанавливаю
frm2.ComboBox1.Text = "test2"
(есть в списке), то сработает.

Если например изначально задан Me.ComboBox1.Text = "test2_new" (не из списка)
и я устанавливаю frm2.ComboBox1.Text = "test1_new" (опять же не из списка)
то сработает.

А вот если установлено из списка, а я задаю не из списка, то не сработает.
Ничего незаконного я не делаю. Это баг, а не я нахимичил. Проверяйте.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827545
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,

какая та ахинея :)
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827548
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRos,

Конечно ахинея. О чем и речь.

Кинь на Form2 комбобокс.
Задай ему Text="test1"
а в Items в столбик напиши
test1
test2
test3
test4
test5

И вызови этот код кнопкой на Form1:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim frm2 As New Form2
    frm2.ComboBox1.Text = "test1_new"
    frm2.ShowDialog()
  End Sub
End Class



И он отобразит "test1", а не "test1_new".
У меня VB.Net VS2013 EE на Win8.1 Net 4.5 если это играет роль и вдруг не получится.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827553
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,

зачем тебе задавать то чего нет?
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827555
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
жаль мне тебя уже какой день мучаешься
Setting the Text property to null or an empty string ("") sets the SelectedIndex to -1.Setting the Text property to a value that is in the Items collection sets the SelectedIndex to the index of that item.Setting the Text property to a value that is not in the collection leaves the SelectedIndex unchanged.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827561
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViPRosжаль мне тебя уже какой день мучаешься.
Да не мучаюсь я. Я поплевался на эту кривость и давно решил эту проблему так:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Public Class Form1
  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim frm2 As New Form2
    'frm2.ComboBox1.Text = "test1_new"
    frm2.ShowDialog()
  End Sub
End Class

Public Class Form2
  Private Sub Form2_Load(sender As Object, e As EventArgs) Handles Me.Load
    Me.ComboBox1.Text = "test1_new"
  End Sub
End Class


Это вы пожелали продолжить дискуссию.
ViPRosSetting the Text property to a value that is not in the collection leaves the SelectedIndex unchanged.
А причем тут "leaves the SelectedIndex unchanged"?
Нигде не сказано что я не имею права
"Setting the Text property to a value that is not in the collection"
Но так или иначе в первом (закомментированном) варианте это не работает.

В моем случае пользователь имеет право выбрать из списка ряд стандартных значений, а имеет право ввести ручками нестандартное.
>зачем тебе задавать то чего нет?
Что значит нет? Есть если пользователь так решил. Но не обязательно в списке.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827575
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,
а зачем вы распечатали ComboBox ( сделали его публичным)?
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827579
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл совсем что в комбо можно и текст ввести :)
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827588
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степиДмитрий77,
а зачем вы распечатали ComboBox ( сделали его публичным)?
Ничего я с ним не делал.
Вы про вот это?
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Public Class Form1

  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim frm2 As New Form2
    frm2.ComboBox1.Text = "test1_new"
    frm2.ShowDialog()
  End Sub
End Class


Если я создал экземпляр формы
Dim frm2 As New Form2
то никто мне не запрещает тут же задать свойства контролов на этой форме (и вот именно тут а не задним числом в Form2_Load).

Мне таки думается что я прав и это тот случай когда необходим WorkAround.
Что меня сильно огорчает, то что подобные WorkAround-ы в .Net надо делать слишком часто, что сильно снижает мой оптимизм при переписывании большого проекта (VB6+много API) на (.Net + мало API). Но вроде уже решился, делаю.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827592
Фотография Где-то в степи
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77,
Вам конечно никто не запрещает, но ComboBox не публичный по дефолту, и таким должен остаться в концепции ООП
следующий меседж конечно можно вам не читать, ( вы отказались понять концепцию связывания),
но так как пост читает много людей, имхо
одно из решений проблемы.
инжектируем в форму объект модель через конструктор, и делаем привязку контролов к его свойствам
стек вызова
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
 private void Button1Click(object sender, EventArgs e)
        {
            var inject = new FooClass { Cb1 = "test.net", Cb2 = "e3wer" };
            var f = new Form2(inject);
            f.ShowDialog();
            MessageBox.Show(string.Format("{0}-{1}", inject.Cb1, inject.Cb2));// тут отлавливаем результаты выбора
        
        }


стек приема
Код: c#
1.
2.
3.
4.
5.
6.
7.
 public Form2(FooClass o)
        {
            InitializeComponent();
// инжектируемый экземпляр можно не выносить на уровень this, если нет нужды, ссылка будет держаться в бандинг листе
            comboBox1.DataBindings.Add("Text", o, "Cb1");
            comboBox2.DataBindings.Add("Text", o, "Cb2");
        }


и все...
В модели можно при желании разместить хоть что ( бизнес операции, валидацию, ....)
и форма чистая, не размазано г... по всем уровням..
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827605
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где-то в степи,
я вашу идею понял
хотя как вы это выше обозвали
"биндин или бандинг (как удобней называть), "
вообще если честно пришлось гадать что имелось ввиду (лучше б сразу на английском обозначили).

Но во первых то что вы предлагаете - это дополнительное звено (передающие параметры из Form1 в Form2).
А во вторых мне этот метод "здесь и сейчас" не подходит.
Просто у меня то что отображается на Form1 очень запутано и редактируется в Form2 сильно нелинейным образом,
т.е. это не три столбца Фамилия-Имя-Должность.
Если интересно, то в данном случае форма настройки правила VOIP маршрутизации с кучей ньюансов (с чего начинается номер, сколько цифр, сколько отнять, какой префикс добавить, куда звонить на SIP, на H.323, на GK или на IP-адрес, через какую SIP-регистрацию, через какой прокси, через TCP или через UDP и куча опций типа какие кодеки и т.п.). Линейно через простое прявязывание это отобразить/отредактировать нереально. Несколько таб-вкладок, куча контролов, при этом от выбора в одном из них зависит поведение других.
И честно говоря, продумывать всю эту модель по новой у меня нет ни желания ни времени,
и в данном случае мне тупо передрать свой же VB6 код (пусть и с элементами г. как вы выражаетесь моего уровня 7 лет тому назад) с поправками на .Net -синтаксис много проще и быстрее чем параллельно пытаться высасывать что-то принципиально новое, оригинальное и каноничное. Работает-не трогай.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827662
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77И честно говоря, продумывать всю эту модель по новой у меня нет ни желания ни времени,
зря, с этого начинать нужно, а уж потом натягивать на это формы

Дмитрий77Линейно через простое прявязывание это отобразить/отредактировать нереально.
что значит нереально? модель может быть достаточно сложной, на изменение значений свойств модели можно
подписать обработчики, возможно изменяющие другие свойства, а главное - понятия не имеющие о каких-то формах, закладках, комбобоксах
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827723
Фотография EDUARD SAPOTSKI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77Если интересно, то в данном случае форма настройки правила VOIP маршрутизации с кучей ньюансов (с чего начинается номер, сколько цифр, сколько отнять, какой префикс добавить, куда звонить на SIP, на H.323, на GK или на IP-адрес, через какую SIP-регистрацию, через какой прокси, через TCP или через UDP и куча опций типа какие кодеки и т.п.). Линейно через простое прявязывание это отобразить/отредактировать нереально. Несколько таб-вкладок, куча контролов, при этом от выбора в одном из них зависит поведение других.
Вам народ по русски сказал - Вы идете по граблям к обрыву.
Я хз как там в VB6 но в .NET с таким подходом трудозатраты растут по экспоненте с ростом сложности проекта. 3-5 формочек таким макаром можно сделать, если больше - получается борода, которую хрен распутаешь.
Где-то в степи посоветовал Вам далеко не самый модный способ построения архитектуры в винформах, но так скажем это дефолтный способ в винформах и самый практичный.
И механизм биндингов в частности предназначен для решения подобных проблем:
Дмитрий77...при этом от выбора в одном из них зависит поведение других.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38827796
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77, я же Вам предложил уже посмотреть декомпайлером, зачем продолжаете гадать?

Вот код свойства ComboBox.Text:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
        /// <summary>Gets or sets the text associated with this control.</summary>
        /// <returns>The text associated with this control.</returns>
        /// <filterpriority>1</filterpriority>
        /// <PermissionSet>
        ///   <IPermission class="System.Security.Permissions.EnvironmentPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Unrestricted="true" />
        ///   <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Unrestricted="true" />
        ///   <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="UnmanagedCode, ControlEvidence" />
        ///   <IPermission class="System.Diagnostics.PerformanceCounterPermission, System, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Unrestricted="true" />
        /// </PermissionSet>
        [Bindable(true)]
        [Localizable(true)]
        public override string Text
        {
            get { /* getter нас не интересует */ }
            set
            {
                if (this.DropDownStyle == ComboBoxStyle.DropDownList && !base.IsHandleCreated && !string.IsNullOrEmpty(value) && this.FindStringExact(value) == -1)
                {
                    return;
                }
                base.Text = value;
                object selectedItem = null;
                selectedItem = this.SelectedItem;
                if (!base.DesignMode)
                {
                    if (value == null)
                    {
                        this.SelectedIndex = -1;
                        return;
                    }
                    if (value != null && (selectedItem == null || string.Compare(value, base.GetItemText(selectedItem), false, CultureInfo.CurrentCulture) != 0))
                    {
                        int num = this.FindStringIgnoreCase(value);
                        if (num != -1)
                        {
                            this.SelectedIndex = num;
                        }
                    }
                }
            }
        }
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38828261
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил зря, с этого начинать нужно, а уж потом натягивать
Я уже все закончил с этим кодом 5 лет назад и давно уже все натянул. И писать его заново как я сказал считаю нерентабельным.
Изопропил на изменение значений свойств модели можно
подписать обработчики,
Да естественно это достигается обработчиками типа Text_Changed RadioButton_CheckChanged/Clicked и т.п. Строить заново "новую модель" здесь считаю тратой времени. Моя цель сейчас - перегнать проект в .Net без ошибок и за минимальные сроки, а он большой и по-любому уйдет несколько месяцев. А дивиденды м.б. получу потом, при дальнейшем развитии проекта. Если так каждую фигню

EDUARD SAPOTSKIв .NET с таким подходом трудозатраты растут по экспоненте с ростом сложности проекта. 3-5 формочек таким макаром можно сделать,
А я разве говорил что у меня таких десятки? Таких громоздких штуки 2.
Я про свои трудозатраты написал выше.
И мы уже давно отвлеклись от темы.

skyANAДмитрий77, я же Вам предложил уже посмотреть декомпайлером, зачем продолжаете гадать?

Вот код свойства ComboBox.Text:

skyANA, т.е. этот "технический код" указывает откуда баг растет -типа для информации?
Предлагаете "исправлять исходники" или что? Думаю это плохая идея.
Ну в принципе мне достаточно запомнить, что заполнение Form2 надо в .Net делать из Form2_Load , а не из Form1 в силу да, кривости реализации -продолжите этот бессмысленный уже академический спор?
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38828454
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77Да естественно это достигается обработчиками типа Text_Changed RadioButton_CheckChanged/Clicked
это как раз неестественно, а точнее через задний проход.

я говорил о событиях модели.
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38828467
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропиля говорил о событиях модели.
я это понял, если ты это не понял из моего ответа
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38828600
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий77skyANAДмитрий77, я же Вам предложил уже посмотреть декомпайлером, зачем продолжаете гадать?

Вот код свойства ComboBox.Text:

skyANA, т.е. этот "технический код" указывает откуда баг растет -типа для информации?
Предлагаете "исправлять исходники" или что? Думаю это плохая идея.
Ну в принципе мне достаточно запомнить, что заполнение Form2 надо в .Net делать из Form2_Load , а не из Form1 в силу да, кривости реализации -продолжите этот бессмысленный уже академический спор?Толсто.

Выложите какой-нибудь большой кусок Вашего кода на общественное review, и Вы узнаете много нового о "кривости" :)
...
Рейтинг: 0 / 0
Form2 неправильно заполняется данными кодом из Form1
    #38829585
Дмитрий77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAВыложите какой-нибудь большой кусок Вашего кода на общественное review, и Вы узнаете много нового о "кривости" :)
Маленького тестового кусочка, исчерпывающе воспроизводящего проблему 16963763 и 16964080 для ее иллюстрации (согласно моему вопросу) достаточно -более чем.
А насчет "какого-нибудь большого куска Вашего кода" -простите, но я не просил учить меня как жить и какие концепции и модели использовать, об этом речь вообще не шла, вы не находите.
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Form2 неправильно заполняется данными кодом из Form1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]