SampleCrossUi.WinForms 1.0.0.0
SampleCrossUi.WinForms 사용 방법을 보여 주는 예제 프로젝트입니다.
로딩중...
검색중...
일치하는것 없음
SampleCrossUi.WinForms.Pages.CounterPage 클래스 참조sealed

더 자세히 ...

SampleCrossUi.WinForms.Pages.CounterPage에 대한 상속 다이어그램 :
SampleCrossUi.WinForms.Pages.CounterPage에 대한 협력 다이어그램:

Public 멤버 함수

 CounterPage ()
 CounterPage (CounterViewModel vm)

Protected 멤버 함수

override void Dispose (bool disposing)

Private 멤버 함수

void OnPropertyChanged (object? sender, PropertyChangedEventArgs e)
void RefreshLog ()
void InitializeComponent ()

Private 속성

Label _title = null!
Label _countLabel = null!
DreamineButton _btnIncrement = null!
DreamineButton _btnReset = null!
FlowLayoutPanel _btnPanel = null!
Label _logTitle = null!
ListBox _logList = null!
FlowLayoutPanel _layout = null!
readonly CounterViewModel _vm

상세한 설명

Counter Page 기능과 관련 상태를 캡슐화합니다.

CounterPage.cs 파일의 17 번째 라인에서 정의되었습니다.

생성자 & 소멸자 문서화

◆ CounterPage() [1/2]

SampleCrossUi.WinForms.Pages.CounterPage.CounterPage ( )
inline

VS WinForms 디자이너용 기본 생성자.

CounterPage.cs 파일의 110 번째 라인에서 정의되었습니다.

110: this(new CounterViewModel(new CounterEvent(new CounterService()))) { }

◆ CounterPage() [2/2]

SampleCrossUi.WinForms.Pages.CounterPage.CounterPage ( CounterViewModel vm)
inline

지정한 설정으로 CounterPage 클래스의 새 인스턴스를 초기화합니다.

매개변수
vmvm에 사용할 CounterViewModel 값입니다.

CounterPage.cs 파일의 128 번째 라인에서 정의되었습니다.

129 {
130 _vm = vm;
131 InitializeComponent();
132
133 _btnIncrement.Click += (_, _) => _vm.IncrementCommand.Execute(null);
134 _btnReset.Click += (_, _) => _vm.ResetCommand.Execute(null);
135
136 _vm.PropertyChanged += OnPropertyChanged;
137 _vm.Logs.CollectionChanged += (_, _) => RefreshLog();
138 RefreshLog();
139 }

다음을 참조함 : _vm, InitializeComponent(), OnPropertyChanged(), RefreshLog().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

멤버 함수 문서화

◆ Dispose()

override void SampleCrossUi.WinForms.Pages.CounterPage.Dispose ( bool disposing)
inlineprotected

이 인스턴스가 소유한 리소스를 해제합니다.

매개변수
disposingdisposing에 사용할 bool 값입니다.

CounterPage.cs 파일의 327 번째 라인에서 정의되었습니다.

328 {
329 if (disposing) _vm.PropertyChanged -= OnPropertyChanged;
330 base.Dispose(disposing);
331 }

다음을 참조함 : OnPropertyChanged().

이 함수 내부에서 호출하는 함수들에 대한 그래프입니다.:

◆ InitializeComponent()

void SampleCrossUi.WinForms.Pages.CounterPage.InitializeComponent ( )
inlineprivate

Initialize Component 작업을 수행합니다.

CounterPage.cs 파일의 196 번째 라인에서 정의되었습니다.

197 {
198 _title = new Label();
199 _countLabel = new Label();
200 _btnIncrement = new DreamineButton();
201 _btnReset = new DreamineButton();
202 _btnPanel = new FlowLayoutPanel();
203 _logTitle = new Label();
204 _logList = new ListBox();
205 _layout = new FlowLayoutPanel();
206 _layout.SuspendLayout();
207 SuspendLayout();
208 //
209 // _title
210 //
211 _title.AutoSize = true;
212 _title.Font = new Font("Segoe UI", 20F, FontStyle.Bold);
213 _title.ForeColor = Color.White;
214 _title.Location = new Point(0, 0);
215 _title.Margin = new Padding(0, 0, 0, 16);
216 _title.Name = "_title";
217 _title.Size = new Size(120, 37);
218 _title.TabIndex = 0;
219 _title.Text = "Counter";
220 //
221 // _countLabel
222 //
223 _countLabel.AutoSize = true;
224 _countLabel.Font = new Font("Segoe UI", 36F, FontStyle.Bold);
225 _countLabel.ForeColor = DreamineTheme.AccentBlue;
226 _countLabel.Location = new Point(0, 53);
227 _countLabel.Margin = new Padding(0, 0, 0, 16);
228 _countLabel.Name = "_countLabel";
229 _countLabel.Size = new Size(218, 65);
230 _countLabel.TabIndex = 1;
231 _countLabel.Text = "Count: 0";
232 //
233 // _btnIncrement
234 //
235 _btnIncrement.Content = "Increment";
236 _btnIncrement.Width = 140;
237 _btnIncrement.Height = 40;
238 _btnIncrement.Margin = new Padding(0, 0, 8, 0);
239 _btnIncrement.Name = "_btnIncrement";
240 _btnIncrement.TabIndex = 0;
241 //
242 // _btnReset
243 //
244 _btnReset.Content = "Reset";
245 _btnReset.Width = 100;
246 _btnReset.Height = 40;
247 _btnReset.Name = "_btnReset";
248 _btnReset.TabIndex = 1;
249 //
250 // _btnPanel
251 //
252 _btnPanel.AutoSize = true;
253 _btnPanel.FlowDirection = FlowDirection.LeftToRight;
254 _btnPanel.Location = new Point(0, 134);
255 _btnPanel.Margin = new Padding(0, 0, 0, 24);
256 _btnPanel.Name = "_btnPanel";
257 _btnPanel.Size = new Size(0, 0);
258 _btnPanel.TabIndex = 2;
259 _btnPanel.Controls.Add(_btnIncrement);
260 _btnPanel.Controls.Add(_btnReset);
261 //
262 // _logTitle
263 //
264 _logTitle.AutoSize = true;
265 _logTitle.Font = new Font("Segoe UI", 10F);
266 _logTitle.Location = new Point(0, 158);
267 _logTitle.Margin = new Padding(0, 0, 0, 4);
268 _logTitle.Name = "_logTitle";
269 _logTitle.Size = new Size(98, 19);
270 _logTitle.TabIndex = 3;
271 _logTitle.Text = "Operation Log";
272 //
273 // _logList
274 //
275 _logList.BorderStyle = BorderStyle.FixedSingle;
276 _logList.Font = new Font("Segoe UI", 9F);
277 _logList.ItemHeight = 15;
278 _logList.Location = new Point(3, 184);
279 _logList.Name = "_logList";
280 _logList.Size = new Size(400, 197);
281 _logList.TabIndex = 4;
282 //
283 // _layout
284 //
285 _layout.AutoSize = true;
286 _layout.Controls.Add(_title);
287 _layout.Controls.Add(_countLabel);
288 _layout.Controls.Add(_btnPanel);
289 _layout.Controls.Add(_logTitle);
290 _layout.Controls.Add(_logList);
291 _layout.Dock = DockStyle.Fill;
292 _layout.FlowDirection = FlowDirection.TopDown;
293 _layout.Location = new Point(24, 24);
294 _layout.Name = "_layout";
295 _layout.Size = new Size(1133, 1225);
296 _layout.TabIndex = 0;
297 _layout.WrapContents = false;
298 //
299 // CounterPage
300 //
301 Controls.Add(_layout);
302 Name = "CounterPage";
303 Padding = new Padding(24);
304 Size = new Size(1181, 1273);
305 _layout.ResumeLayout(false);
306 _layout.PerformLayout();
307 ResumeLayout(false);
308 PerformLayout();
309 }

다음을 참조함 : _btnIncrement, _btnPanel, _btnReset, _countLabel, _layout, _logList, _logTitle, _title.

다음에 의해서 참조됨 : CounterPage().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ OnPropertyChanged()

void SampleCrossUi.WinForms.Pages.CounterPage.OnPropertyChanged ( object? sender,
PropertyChangedEventArgs e )
inlineprivate

Property Changed 이벤트 또는 상태 변경을 처리합니다.

매개변수
sender이벤트를 발생시킨 객체입니다.
e이벤트와 관련된 데이터를 포함합니다.

CounterPage.cs 파일의 165 번째 라인에서 정의되었습니다.

166 {
167 if (e.PropertyName == nameof(CounterViewModel.Count))
168 _countLabel.Text = $"Count: {_vm.Count}";
169 }

다음에 의해서 참조됨 : CounterPage(), Dispose().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

◆ RefreshLog()

void SampleCrossUi.WinForms.Pages.CounterPage.RefreshLog ( )
inlineprivate

Refresh Log 작업을 수행합니다.

CounterPage.cs 파일의 179 번째 라인에서 정의되었습니다.

180 {
181 _logList.BeginUpdate();
182 _logList.Items.Clear();
183 foreach (var item in _vm.Logs)
184 _logList.Items.Add($"[{item.CreatedAt:HH:mm:ss}] {item.Message}");
185 _logList.EndUpdate();
186 }

다음을 참조함 : _logList, _vm.

다음에 의해서 참조됨 : CounterPage().

이 함수를 호출하는 함수들에 대한 그래프입니다.:

멤버 데이터 문서화

◆ _btnIncrement

DreamineButton SampleCrossUi.WinForms.Pages.CounterPage._btnIncrement = null!
private

btn Increment 값을 보관합니다.

CounterPage.cs 파일의 45 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _btnPanel

FlowLayoutPanel SampleCrossUi.WinForms.Pages.CounterPage._btnPanel = null!
private

btn Panel 값을 보관합니다.

CounterPage.cs 파일의 63 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _btnReset

DreamineButton SampleCrossUi.WinForms.Pages.CounterPage._btnReset = null!
private

btn Reset 값을 보관합니다.

CounterPage.cs 파일의 54 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _countLabel

Label SampleCrossUi.WinForms.Pages.CounterPage._countLabel = null!
private

count Label 값을 보관합니다.

CounterPage.cs 파일의 36 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _layout

FlowLayoutPanel SampleCrossUi.WinForms.Pages.CounterPage._layout = null!
private

layout 값을 보관합니다.

CounterPage.cs 파일의 90 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _logList

ListBox SampleCrossUi.WinForms.Pages.CounterPage._logList = null!
private

log List 값을 보관합니다.

CounterPage.cs 파일의 81 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent(), RefreshLog().

◆ _logTitle

Label SampleCrossUi.WinForms.Pages.CounterPage._logTitle = null!
private

log Title 값을 보관합니다.

CounterPage.cs 파일의 72 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _title

Label SampleCrossUi.WinForms.Pages.CounterPage._title = null!
private

title 값을 보관합니다.

CounterPage.cs 파일의 27 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : InitializeComponent().

◆ _vm

readonly CounterViewModel SampleCrossUi.WinForms.Pages.CounterPage._vm
private

vm 값을 보관합니다.

CounterPage.cs 파일의 100 번째 라인에서 정의되었습니다.

다음에 의해서 참조됨 : CounterPage(), RefreshLog().


이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.: