SampleSmart 1.0.0.0
SampleSmart 사용 방법을 보여 주는 예제 프로젝트입니다.
로딩중...
검색중...
일치하는것 없음
MainWindow.xaml.Event.cs
이 파일의 문서화 페이지로 가기
1using Dreamine.Logging.Interfaces;
2using Dreamine.MVVM.Interfaces.Navigation;
5using System.Windows;
6
7namespace SampleSmart.Pages
8{
17 public class MainWindowEvent
18 {
27 private readonly IViewManager _viewManager;
36 private readonly IDreamineLogger _logger;
37
62 public MainWindowEvent(IViewManager viewManager, IDreamineLogger logger)
63 {
64 _viewManager = viewManager;
65 _logger = logger;
66 }
67
76 public void Ok()
77 {
78 _logger.Info("OK clicked.");
79 MessageBox.Show("확인 클릭됨!");
80 }
81
90 public void Cancel()
91 {
92 _logger.Info("Cancel clicked.");
93 MessageBox.Show("취소 클릭됨!");
94 }
95
104 public void SubPage()
105 {
106 _logger.Info("PageSub requested.");
108 }
109
118 public void SubPage2()
119 {
120 _logger.Info("PageSub2 requested.");
122 }
123
132 public void LogPage()
133 {
134 _logger.Info("PageLog requested.");
136 }
137
146 public void ThreadPage()
147 {
148 _logger.Info("Thread monitor page requested.");
150 }
151
159 public void CommunicationPage()
160 {
161 _logger.Info("Communication monitor page requested.");
163 }
164
173 public void PlcPage()
174 {
175 _logger.Info("PLC monitor page requested.");
177 }
178
187 public void IoPage()
188 {
189 _logger.Info("I/O monitor page requested.");
191 }
192
201 public void DatabasePage()
202 {
203 _logger.Info("Database sample page requested.");
205 }
206
215 public void SubWindow()
216 {
217 _logger.Info("WindowSub requested.");
219 }
220
229 public void NoticeWindow()
230 {
231 _logger.Info("NoticeWindow requested.");
233 }
234
243 public void MonitorWindow()
244 {
245 _logger.Info("MonitorWindow requested.");
247 }
248
257 public void SettingWindow()
258 {
259 _logger.Info("SettingWindow requested.");
261 }
262
271 public void Minimize()
272 {
273 _logger.Debug("Minimize requested.");
274
275 var w = GetActiveWindow();
276 if (w != null)
277 {
278 w.WindowState = WindowState.Minimized;
279 }
280 }
281
290 public void Maximize()
291 {
292 _logger.Debug("Maximize requested.");
293
294 var w = GetActiveWindow();
295 if (w != null)
296 {
297 w.WindowState = w.WindowState == WindowState.Maximized
298 ? WindowState.Normal
299 : WindowState.Maximized;
300 }
301 }
302
311 public void Close()
312 {
313 _logger.Info("Close requested.");
314 GetActiveWindow()?.Close();
315 }
316
333 private Window? GetActiveWindow()
334 {
335 return Application.Current?.Windows
336 .OfType<Window>()
337 .FirstOrDefault(w => w.IsActive);
338 }
339 }
340}
MainWindowEvent(IViewManager viewManager, IDreamineLogger logger)