WPF アプリケーションの MainWindow.xaml.cs ファイルで、コントロールと MessageBox を簡単に変更/アクセスできます。ただし、いくつかのフォルダーを作成してそこにクラスを追加すると、MessageBox にアクセスできなくなり、Intellisense ドロップダウンにコントロール名が表示されなくなります。
(これは非常に初歩的なようですが、C# と WPF は初めてです)
名前空間が欠落している必要があります。次のようなことができます。
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!";
}
}
}
その他のファイル.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_);
}
}
}
各ファイルで同じ名前空間を使用していることに注意してください。 internal キーワードを使用すると、同じ名前空間にある限り、メッセージにアクセスできます。これが役立つことを願っています!
クラスには、作成した新しいクラス内でアクセスしようとしているクラスへのアクセスを許可するステートメントを使用する権利がありますか?