Я пришел, чтобы ответить сам.
Если это может кому-нибудь помочь:
Я добавил в свой MainWindow.cs:
public delegate void updateNetworkButtonDelegate(string message);
public void updateNetworkButton(string message)
{
if (!test_btn.Dispatcher.CheckAccess())
{
test_btn.Dispatcher.Invoke(new updateNetworkButtonDelegate(updateNetworkButton), message);
}
else
{
test_btn.Content = message;
}
}
}
Я изменил свой TcpClient, чтобы передать MainWindow в параметре:
public static void StartClient(MainWindow mw)
, тогда я мог бы обновить свою кнопку с помощью:
mw.updateNetworkButton (response);