m возникли проблемы при работе с richtextbox из другого класса
m использует класс backgroundworker для отделения потока GUI от потока вычислений
это функция, которую мне нужно вызвать из другого класса
public void UpdateRTB(String strText, Color colVar)
{
if (InputBox.InvokeRequired)
{
InputBox.Invoke(new UpdateRTBCallback(this.UpdateRTB), new object[] { strText, colVar });
}
else
{
InputBox.Select(InputBox.Text.IndexOf(strText), strText.Length);
InputBox.SelectionColor = colVar;
InputBox.Update();
}
}
переменная objForm1 - это переменная, объявленная после инициализации формы как
objForm1 = this;
функция, которая возвращает форму:
public static Form1 GetThisForm()
{
return objForm1;
}
это мой делегат, который объявлен глобально
public delegate void UpdateRTBCallback(String strText, Color strColor);
это код, который я пишу в другом классе, чтобы вызвать его
Form1 form1 = Form1.GetThisForm();
form1.UpdateRTB(item, Color.Yellow);
в objForm1, когда я отлаживаюсь, я вижу, что в полях отображается System.InvalidOperationException.
Пожалуйста, помогите !!!