• Как организовать взаимодейтсвие двух форм ввода данных с третьей формой-справочником?

    @Kiram Автор вопроса
    Решил сам проблему.
    Создал глобальную переменную в модуле Program.cs
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace WinApplication
    {
        static class Program
        {
            /// <summary>
            /// Главная точка входа для приложения.
            /// </summary>
            [STAThread]
            static void Main()
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false); 
                Application.Run(new FrmAuthorization());
            }
            public static string MyIndex;
            public static string MyIndexStr;
        }
    }

    далее на форме 1 и 2 вставил код вызова на двойной клик по текстовому полю
    private void tbCodeStreet_DoubleClick(object sender, EventArgs e)
            {            
                frmSprStreet form = new frmSprStreet(); //создаем форму населенные пункты
                form.btnSelectZero.Visible = true; //Отображаем кнопки "Выбор 0" и "Выбор" на форме населенные пункты
                form.btnSelect.Visible = true;
                form.ShowDialog();  //показать модельно форму населенные пункты
                tbCodeStreet.Text = ABELS_SQL.Program.MyIndex;
                tbStreet.Text = ABELS_SQL.Program.MyIndexStr;
                ABELS_SQL.Program.MyIndex = "";
                ABELS_SQL.Program.MyIndexStr = "";
            }

    и на форме 3 справочнике на кнопки "Выбор 0" (пустого значения) и "Выбор" сделал так:
    private void btnSelect_Click(object sender, EventArgs e)
            {
                //Код для передачи данных из формы населенные пункты на форму вызвашую 
                ABELS_SQL.Program.MyIndex = dgvStreet.CurrentRow.Cells[0].Value.ToString();
                ABELS_SQL.Program.MyIndexStr = dgvStreet.CurrentRow.Cells[1].Value.ToString();
                this.Close();
            }
    
            private void btnSelectZero_Click(object sender, EventArgs e)
            {
                //Код для передачи "пустых данных" из формы населенные пункты на форму вызвашую
                ABELS_SQL.Program.MyIndex = "";
                ABELS_SQL.Program.MyIndexStr = "";
                this.Close();
            }
    Ответ написан
    Комментировать