Un espace de noms doit être manquant. Vous pouvez faire quelque chose comme ceci:
MainWindow.cs:
using System;
using System.Text;
using System.Windows;
using System.Windows.Controls;
namespace YourNameSpaceHere
{
public partial class MainWindow : Window
{
internal static string message_ = string.Empty;
MainWindow()
{
InitializeComponent();
SetupMessage();
}
private void SetupMessage()
{
message_ = "Hello World!";
}
}
}
OtherFile.cs:
using System;
using System.Text;
using System.Windows;
using System.Windows.Controls; //are you missing this namespace?
namespace YourNameSpaceHere
{
public class Messaging
{
Messaging()
{
MessageBox.Show(MainWindow.message_);
}
}
}
Notez que j'utilise le même espace de noms dans chaque fichier et en utilisant le mot-clé interne, le message peut être accédé par n'importe quel élément tant qu'il se trouve dans le même espace de noms. J'espère que ça aide!
J'avais aussi ce problème et j'ai utilisé la réponse de Partial. Il me manquait l'espace de noms suivant: using System.Windows.Controls; En outre, vous devez utiliser le mot-clé 'internal' comme dans l'exemple de Partial. – tone7