私はC#とフォームの初心者です。現在の時間をさまざまな形式で書き込むウィンドウを作成することです。 しかし、私は別のクラスからフォームの別のラベルにアクセスしようとしています。複数のクラスからフォームのラベルにアクセスするにはどうすればよいですか?
レイアウトは次のようになります。 はclocks layout
だから、今の私は、標準クロック、バイナリで時間を書き込みクロックと文字との時間をアウト呪文クロックをしたいと思います。
私がやりたかったのは、必要なものを計算し、何を表示するかを教えるクラスを作成することでした。
は、だから私は、main関数でのProgram.csでフォームを作成しました:それはすでにForm1の(これも一部であるIドンを開始し、いくつかの事前生成されたコードを持っているよう
Form1 myForm = new Form1();
これは不要だったかもしれません「トンが本当に取得は、それがインスタンス化する必要はありません):
using System;
using System.Windows.Forms;
namespace Clocks
{
public class NormalClock
{
public NormalClock()
{
myForm.lNormalClock.Text = DateTime.Now.ToLongTimeString();
}
}
}
:私は通常のクロッククラスで試してみました何
Application.Run(new Form1());
?
ただし、フォームのラベルにアクセスできませんでした。
私の質問はこれです:どのように私は別のクラスから1つのフォームの異なるラベルにアクセスするのですか?
ありがとうございました!
どこから(どのクラス) 'Form1'から' NormalClock'をインスタンス化していますか? – Fruchtzwerg
私はいくつかの変更を加え、Program.csでこれをやろうとしましたが、NormalClockはmyFormのラベルにアクセスできません。 – pwndemic
私はいくつかの変更を加えましたが、今はForm1.csにあります。ちょっとエレガントに見える – pwndemic