Dreamine.Web
1.0.0.0
WPF와 Blazor를 한 코드 흐름으로 연결하고 반복적인 MVVM 코드를 줄이는 오픈소스 FullKit 공식 웹 애플리케이션입니다.
Toggle main menu visibility
로딩중...
검색중...
일치하는것 없음
LightBulbViewModel.cs
이 파일의 문서화 페이지로 가기
1
using
Dreamine.MVVM.ViewModels;
2
3
namespace
DreamineWeb.ViewModels.Demos
;
4
13
public
sealed
class
LightBulbModel
14
{
23
public
bool
IsOn
{
get
;
set
; }
32
public
int
ToggleCount
{
get
;
set
; }
33
}
34
43
public
sealed
class
LightBulbEvent
44
{
53
private
readonly
LightBulbModel
_model
;
70
public
LightBulbEvent
(
LightBulbModel
model) =>
_model
= model;
71
80
public
void
Toggle
()
81
{
82
_model.IsOn = !
_model
.IsOn;
83
_model
.ToggleCount++;
84
}
85
102
public
void
Set
(
bool
on)
103
{
104
if
(
_model
.IsOn == on)
return
;
105
_model.IsOn = on;
106
_model
.ToggleCount++;
107
}
108
}
109
118
public
sealed
class
LightBulbViewModel
: ViewModelBase
119
{
128
private
readonly
LightBulbModel
_model
=
new
();
137
private
readonly
LightBulbEvent
_event
;
138
147
public
LightBulbViewModel
() =>
_event
=
new
LightBulbEvent
(
_model
);
148
157
public
bool
IsOn
158
{
159
get
=>
_model
.IsOn;
160
set
161
{
162
_event
.Set(value);
163
RaiseState
();
164
}
165
}
166
175
public
int
ToggleCount
=>
_model
.ToggleCount;
176
185
public
string
StatusText
=> _model.IsOn ?
"ON"
:
"OFF"
;
186
195
public
void
Toggle
()
196
{
197
_event
.Toggle();
198
RaiseState
();
199
}
200
209
private
void
RaiseState
()
210
{
211
OnPropertyChanged(nameof(
IsOn
));
212
OnPropertyChanged(nameof(
ToggleCount
));
213
OnPropertyChanged(nameof(
StatusText
));
214
}
215
}
DreamineWeb.ViewModels.Demos
Definition
ControlsShowcaseViewModel.cs:4
DreamineWeb.ViewModels.Demos.LightBulbModel
Definition
LightBulbViewModel.cs:14
DreamineWeb.ViewModels.Demos.LightBulbModel.IsOn
bool IsOn
Definition
LightBulbViewModel.cs:23
DreamineWeb.ViewModels.Demos.LightBulbModel.ToggleCount
int ToggleCount
Definition
LightBulbViewModel.cs:32
DreamineWeb.ViewModels.Demos.LightBulbEvent
Definition
LightBulbViewModel.cs:44
DreamineWeb.ViewModels.Demos.LightBulbEvent.LightBulbEvent
LightBulbEvent(LightBulbModel model)
Definition
LightBulbViewModel.cs:70
DreamineWeb.ViewModels.Demos.LightBulbEvent.Toggle
void Toggle()
Definition
LightBulbViewModel.cs:80
DreamineWeb.ViewModels.Demos.LightBulbEvent._model
readonly LightBulbModel _model
Definition
LightBulbViewModel.cs:53
DreamineWeb.ViewModels.Demos.LightBulbEvent.Set
void Set(bool on)
Definition
LightBulbViewModel.cs:102
DreamineWeb.ViewModels.Demos.LightBulbViewModel.RaiseState
void RaiseState()
Definition
LightBulbViewModel.cs:209
DreamineWeb.ViewModels.Demos.LightBulbViewModel._event
readonly LightBulbEvent _event
Definition
LightBulbViewModel.cs:137
DreamineWeb.ViewModels.Demos.LightBulbViewModel.Toggle
void Toggle()
Definition
LightBulbViewModel.cs:195
DreamineWeb.ViewModels.Demos.LightBulbViewModel._model
readonly LightBulbModel _model
Definition
LightBulbViewModel.cs:128
DreamineWeb.ViewModels.Demos.LightBulbViewModel.LightBulbViewModel
LightBulbViewModel()
Definition
LightBulbViewModel.cs:147
DreamineWeb.ViewModels.Demos.LightBulbViewModel.ToggleCount
int ToggleCount
Definition
LightBulbViewModel.cs:175
DreamineWeb.ViewModels.Demos.LightBulbViewModel.IsOn
bool IsOn
Definition
LightBulbViewModel.cs:158
DreamineWeb.ViewModels.Demos.LightBulbViewModel.StatusText
string StatusText
Definition
LightBulbViewModel.cs:185
ViewModels
Demos
LightBulbViewModel.cs
다음에 의해 생성됨 :
1.17.0