Я хочу выбрать форму своего приложения для редактирования настроек текстового поля в нем. Для этого я использовал Form.ActiveForm
. Это отлично работает, когда форма находится на переднем плане, но когда она не выбрана, это больше не работает. Есть ли способ получить текущую форму приложения, даже если он находится в фоновом режиме?C# Выбор формы программы
EDIT: Вот код:
var form = Form.ActiveForm as MainForm;
if (form != null)
{
form.txtChatOutput.Text += p.Data[0] + "\r\n";
}
EDIT 2:
Я нашел простое решение. Объявить переменную форму myForm; в классе и в событии Shown вашей формы установите его в Form.ActiveForm.
public partial class Form1 : Form
{
Form myForm;
....
private void Form1_Shown(object sender, EventArgs e)
{
myForm = Form.ActiveForm;
}
}
Вы можете получить доступ к своей форме, используя myForm, даже если она больше не выбрана.
Было бы полезно, если бы вы разместили код –
Iterate 'Application.OpenForms', который ищет определенную форму, в которой вы нуждаетесь. – InBetween