c # закрыть winforms от другого winforms - PullRequest
0 голосов
/ 12 июня 2019

У меня есть форма 1 и форма 2. В форме 1 у меня есть кнопка 4, которую используют кнопки 1 и 2, чтобы открыть форму 2, предоставив форме 2 определенное имя - form2A и form2B.Кнопки 3 и 4 используются для закрытия открытой базы формы по имени формы.Как я могу закрыть форму 2A, когда нажимаю кнопку 3, но не закрываю форму 2B?

public static List<Form> forms = new List<Form>();

Форма открыта

TagItem.TagItemInfo tagItemInfo = new TagItem.TagItemInfo(symbol_id);
tagItemInfo.Name = symbol_id.ToString();
TagList.forms.Add(tagItemInfo);
tagItemInfo.Show();

Форма закрыта

if(TagList.forms.Count > 0)
        {
            foreach(Form frm in TagList.forms)
            {
                if(frm.Name == o.SymbolID.ToString())
                {
                    frm.Dispose();
                    frm.Close();
                }
            }
        }

Моя система можетоткройте столько, сколько форма, которая будет указывать имя для него.

1 Ответ

0 голосов
/ 12 июня 2019

Вы должны определить Form2A и Form2B как 2 разных переменных:

private Form2 _form2a, _form2b;

//open Form 2A with Windowtext "Form 2A"
private void Button1_Click(object sender, EventArgs e)
{
    _form2a = new Form2 { Text="Form 2A" };
    _form2a.Show();
}

//open Form 2B with Windowtext "Form 2B"
private void Button2_Click(object sender, EventArgs e)
{
    _form2b = new Form2 { Text="Form 2B" };
    _form2b.Show();
}

//close Form 2A
private void Button3_Click(object sender, EventArgs e)
{
    _form2a.Close();
}

//close Form 2B
private void Button4_Click(object sender, EventArgs e)
{
    _form2b.Close();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...