Я пытаюсь манипулировать PictureBox (pBATalk
), чтобы показывать, когда я закрываю форму (PAInput
). Поэтому в основном я хочу показать картинку, когда вторая форма закрыта.Управление манипулятором на другой форме
второй Форма
public void PAInput_FormClosing(object sender, FormClosingEventArgs e)
{
this.Hide();
fPAMain.PATalkActive(false);
e.Cancel = true;
}
MainForm:
public void PATalkActive(bool active)
{
//MessageBox.Show("");
if (active == true)
{
pBPATalk.Hide();
}
if (active == false)
{
pBPATalk.Show();
}
}
Всякий раз, когда я закрываю PAInput
это вызовет PATalkActive
, но только огонь MessageBox.Show("");
, а не pBATalk.Hide();
или pBATalk.Show();
Извините, что требовалось, чтобы это было видно. Проследили ли вы код, разместив точки останова на pBPATalk.Show(), чтобы узнать, достигнут ли этот код? Если это так, вы вручную сделали управление видимым? Вы пробовали this.Refresh() после оператора Show(), чтобы заставить вашу форму перерисовывать? – Spevy
@Spevy Я тоже подумал об этом, но к сожалению это было не так. Странно, что он «использует» код, который доступен только для чтения/чтения. Я подозреваю, что это может быть вопросом разрешения. –