重複した質問: 保護レベルが原因でプロパティにアクセスできません
上記の重複した質問のように、デリゲートとイベントを使用して、クラスからフォーム テキスト ボックスに文字列を送信したいと考えています。このトピック (デリゲートとイベント) は初めてなので、これを設定することはできません。これが私がやったことです:
class Converter
{
public delegate void SendText( Converter c, EventArgs e);
public event SendText RaiseEvent;
public static void WatchFile()
{
// watcher is initialized (code is not show)
watcher.Changed += new FileSystemEventHandler(convert);
}
public static void convert(object source, FileSystemEventArgs f)
{
//do something then
if (RaiseEvent != null)
{
// Raise event and send text to controls
}
}
}
次のエラー メッセージが表示されます。
非静的フィールド、メソッド、またはプロパティ 'Ansi_UTF_8_converter.Converter.RaiseEvent' にはオブジェクト参照が必要です
上記の方法が正しいかどうか教えてください。