Не обновляется текст в Windows Forms C#

У меня есть проект(.Net FrameWork 4.7.2) с разными Формами(Windows).

Одна из форма называется Settings. В данной форме я предусмотрел кнопку для локализации программы. При нажатии на кнопку программа изменяет текст кнопок только на данной форме, а к остальным формам даже не притрагивается.

Объявление класса:

public partial class Settings : UserControl

Код кнопки:

        public void UpdateLang(string _currentLanguage)
    {
        Analyze analyze = new Analyze();
        Graph graph = new Graph();

        Thread AnalyzeThread = new Thread(() => analyze.ChangeLanguage(_currentLanguage));
        Thread GraphThread = new Thread(() => graph.ChangeLanguage(_currentLanguage));

        AnalyzeThread.Start();
        GraphThread.Start();

        MainPage mainpage = new MainPage();
        mainpage.ChangeLanguage(_currentLanguage);
        ChangeLanguage(_currentLanguage);
    }

Код смены языка:

private void ChangeLanguage(string _currentLanguage)
    {
        XmlDocument xml = new XmlDocument();
        Excel excel = new Excel();
        string XmlFilePath = $@"{excel.GetExcelFileDirectory()}\settings.xml";
        xml.Load(XmlFilePath);
        XmlElement element = xml.DocumentElement;
        foreach (XmlNode xnode in element)
        {
            if (xnode.Attributes.Count > 0)
            {
                XmlNode attr;
                attr = xnode.Attributes.GetNamedItem("countrylanguage");

                if (attr != null && attr.Value.Contains(_currentLanguage))
                {
                    foreach (XmlNode childnode in xnode.ChildNodes)
                    {
                        if (childnode.Name == CreateNewTableBtn.Name)
                        {
                            CreateNewTableBtn.Text = childnode.InnerText;
                        }
                        else if (childnode.Name == NewTableNameLabel.Name)
                        {
                            NewTableNameLabel.Text = childnode.InnerText;
                        }
                    }

                    break;
                }
            }
        }
    }

Каждый класс имеет данную функцию, но повторюсь, она работает исключительно в этом классе, а в Analyze, Graph и т.д. - не выполняется. Если убирать работу потоков, то так же ничего не происходит.

Так же есть вторая проблема. При выполнении программы она записывает рекомендуемые действия в коллекцию.

Notifications NotRichTextBox = new Notifications();
                                    NotRichTextBox.AppendTextToNotificationsList($"[{excel.ReadCell(line, 8)}]{Shower}");

Реализация:

        public void AppendTextToNotificationsList(string Text)
    {
        TextForRicheTextBox.Add(Text);
    }

Но после окончания выполнения анализа почему-то не срабатывает метод:

Notifications NotRichTextBoxAdd = new Notifications();
            NotRichTextBoxAdd.AddTextToRichBox();

Реализован он так:

        public void AddTextToRichBox()
    {
        foreach (var element in TextForRicheTextBox)
        {
            RichTextBoxImprovments.AppendText(element + '\n');
        }
    }

Ответы (0 шт):