Я пришел из встроенного C программирования и совершенно ничего не знаю о oop, задачах, потоках, e cc .. Я выясняю основные понятия C# и oop и хотел попробовать кодировать простой секундомер.
Цель: переключить состояние секундомера с помощью кнопки и показать значение внутри самой кнопки.
Пока я пришел к этому:
namespace Cronometro
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
}
public class MyTimerClass
{
private DateTime TimeValue;
private System.Timers.Timer TimerObj;
private const int TimeInterval = 1;
public MyTimerClass()
{
TimeValue new DateTime(0, 0, 0, 0, 0, 0, 0, DateTimeKind.Local);
TimerObj = new System.Timers.Timer(TimeInterval);
TimerObj.AutoReset = true;
TimerObj.Elapsed += TimerObj_Elapsed;
}
private void TimerObj_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
TimeValue = TimeValue.AddMilliseconds((double)TimeInterval);
}
public void Start()
{
TimerObj.Start();
}
public void Stop()
{
TimerObj.Stop();
}
}
}
Итак, я просто хотел напечатать значение с помощью Button.Content, но мне кажется, что я не могу использовать его вне класса MainWindow
.
Что мне делать? Я начал думать о создании задачи внутри основного класса и подождал, пока событие таймера выведет значение, но ничего не знаю о потоках и задачах.