59 lines
1.8 KiB
Plaintext
59 lines
1.8 KiB
Plaintext
<div class="flex flex-row mt-2">
|
|
<p class="ml-3 font-bold text-justify my-auto grow">@Question</p>
|
|
<div class="flex flex-row">
|
|
<MudIconButton @onclick="async () => await IncreaseHour()" DisableElevation="true" Class="bg-white rounded-full"
|
|
Icon="@Icons.Material.Filled.KeyboardArrowUp" Variant="Variant.Filled" />
|
|
<p class="my-auto ml-1 mr-2 text-xl font-extrabold">@Answer</p>
|
|
<p class="my-auto ml-2 font-extrabold">ساعت</p>
|
|
<MudIconButton @onclick="async () => await DecreaseHour()" DisableElevation="true" Class="bg-white rounded-full"
|
|
Icon="@Icons.Material.Filled.KeyboardArrowDown" Variant="Variant.Filled" />
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@code
|
|
{
|
|
|
|
public override async Task SetParametersAsync(ParameterView parameters)
|
|
{
|
|
await base.SetParametersAsync(parameters);
|
|
if (!OldAnswer.IsNullOrEmpty() && int.TryParse(OldAnswer, out int hCounter))
|
|
{
|
|
if (_hourCounter == hCounter)
|
|
return;
|
|
_hourCounter = hCounter;
|
|
Answer = _hourCounter.ToString();
|
|
await AnswerChanged.InvokeAsync(Answer);
|
|
}
|
|
}
|
|
|
|
private int _hourCounter;
|
|
|
|
[Parameter]
|
|
public string Answer { get; set; } = string.Empty;
|
|
|
|
[Parameter]
|
|
public string OldAnswer { get; set; } = string.Empty;
|
|
|
|
[Parameter]
|
|
public EventCallback<string> AnswerChanged { get; set; }
|
|
|
|
[Parameter]
|
|
public string Question { get; set; } = string.Empty;
|
|
|
|
private async Task IncreaseHour()
|
|
{
|
|
_hourCounter++;
|
|
Answer = _hourCounter.ToString();
|
|
await AnswerChanged.InvokeAsync(Answer);
|
|
}
|
|
|
|
private async Task DecreaseHour()
|
|
{
|
|
if(_hourCounter==0)
|
|
return;
|
|
_hourCounter--;
|
|
Answer = _hourCounter.ToString();
|
|
await AnswerChanged.InvokeAsync(Answer);
|
|
}
|
|
} |