Aggiunto componenti x test RadZen Scheduler
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
@inject DialogService DialogService
|
||||
|
||||
<RadzenTemplateForm TItem="Appointment" Data="@model" Submit=@OnSubmit>
|
||||
<RadzenStack Gap="1rem">
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Title" Style="width: 4rem;" />
|
||||
<RadzenTextBox @bind-Value="@model.Text" Name="Text" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Text" Text="Title is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Detail" Style="width: 4rem;" />
|
||||
<RadzenTextBox @bind-Value="@model.Detail" Name="Detail" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Detail" Text="Detail is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Start" Style="width: 4rem;" />
|
||||
<RadzenDatePicker @bind-Value="@model.Start" Name="Start" ShowTime="true" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Start" Text="Start is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="End" Style="width: 4rem;" />
|
||||
<RadzenDatePicker Name="End" @bind-Value="@model.End" ShowTime="true" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="End" Text="End is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.End" >
|
||||
<RadzenButton ButtonType="ButtonType.Submit" Text="Save" />
|
||||
</RadzenStack>
|
||||
</RadzenStack>
|
||||
</RadzenTemplateForm>
|
||||
@code {
|
||||
[Parameter]
|
||||
public DateTime Start { get; set; }
|
||||
|
||||
[Parameter]
|
||||
public DateTime End { get; set; }
|
||||
|
||||
Appointment model = new Appointment();
|
||||
|
||||
protected override void OnParametersSet()
|
||||
{
|
||||
model.Start = Start;
|
||||
model.End = End;
|
||||
}
|
||||
|
||||
void OnSubmit(Appointment model)
|
||||
{
|
||||
DialogService.Close(model);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
namespace EgwCoreLib.BlazorTest.Components
|
||||
{
|
||||
public class Appointment
|
||||
{
|
||||
public DateTime Start { get; set; }
|
||||
public DateTime End { get; set; }
|
||||
|
||||
public string Text { get; set; } = "";
|
||||
public string Detail { get; set; } = "";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
@inject DialogService DialogService
|
||||
|
||||
<RadzenTemplateForm TItem="Appointment" Data="@model" Submit=@OnSubmit>
|
||||
<RadzenStack Gap="1rem">
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Title" Style="width: 6rem;" />
|
||||
<RadzenTextBox @bind-Value="@model.Text" Name="Text" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Text" Text="Title is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Detail" Style="width: 6rem;" />
|
||||
<RadzenTextBox @bind-Value="@model.Detail" Name="Detail" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Detail" Text="Detail is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="Start" Style="width: 6rem;" />
|
||||
<RadzenDatePicker @bind-Value="@model.Start" Name="Start" ShowTime="true" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="Start" Text="Start is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" Wrap="FlexWrap.Wrap">
|
||||
<RadzenLabel Text="End" Style="width: 6rem;" />
|
||||
<RadzenDatePicker Name="End" @bind-Value="@model.End" ShowTime="true" Style="width: 12rem;" />
|
||||
<RadzenRequiredValidator Component="End" Text="End is required" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.End" >
|
||||
<RadzenButton ButtonType="ButtonType.Submit" Text="Save" />
|
||||
</RadzenStack>
|
||||
</RadzenStack>
|
||||
</RadzenTemplateForm>
|
||||
@code {
|
||||
[Parameter]
|
||||
public Appointment Appointment { get; set; }
|
||||
|
||||
Appointment model = new Appointment();
|
||||
|
||||
protected override void OnParametersSet()
|
||||
{
|
||||
model = Appointment;
|
||||
}
|
||||
|
||||
void OnSubmit(Appointment model)
|
||||
{
|
||||
DialogService.Close(model);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
@using Radzen
|
||||
@using System.Text.Json
|
||||
@inject IJSRuntime JSRuntime
|
||||
<RadzenCard Variant="Variant.Outlined" class="rz-mt-4">
|
||||
<RadzenStack Orientation="Orientation.Vertical" Gap="0.5rem" @attributes=@Attributes>
|
||||
<RadzenStack Orientation="Orientation.Horizontal" AlignItems="AlignItems.Center" JustifyContent="JustifyContent.SpaceBetween">
|
||||
<RadzenText TextStyle="TextStyle.Subtitle1" TagName="TagName.P" class="rz-m-0">Console log</RadzenText>
|
||||
<RadzenButton Click=@OnClearClick Text="Clear console" ButtonStyle="ButtonStyle.Base" Variant="Variant.Flat" Size="ButtonSize.Small" />
|
||||
</RadzenStack>
|
||||
<RadzenStack Orientation="Orientation.Vertical" Gap="0" ID="event-console" class="rz-pt-1" Style="border-top: var(--rz-grid-cell-border); min-height: 2rem; max-height: 12rem; overflow: auto;">
|
||||
@foreach (var message in messages)
|
||||
{
|
||||
<RadzenAlert ShowIcon="false" Variant="Variant.Flat" AlertStyle="message.AlertStyle" Size="AlertSize.ExtraSmall" Shade="Shade.Lighter" AllowClose="false" Style="font-size: 0.75rem">
|
||||
<span Style="opacity: 0.6;">@message.Date.ToString("HH:mm:ss.ff")</span> @message.Text
|
||||
</RadzenAlert>
|
||||
}
|
||||
</RadzenStack>
|
||||
</RadzenStack>
|
||||
</RadzenCard>
|
||||
|
||||
@code {
|
||||
class Message
|
||||
{
|
||||
public DateTime Date { get; set; }
|
||||
public string Text { get; set; }
|
||||
public AlertStyle AlertStyle { get; set; }
|
||||
}
|
||||
|
||||
[Parameter(CaptureUnmatchedValues = true)]
|
||||
public IDictionary<string, object> Attributes { get; set; }
|
||||
IList<Message> messages = new List<Message>();
|
||||
|
||||
protected override async Task OnAfterRenderAsync(bool firstRender)
|
||||
{
|
||||
if (!firstRender)
|
||||
{
|
||||
await JSRuntime.InvokeVoidAsync("eval", $"document.getElementById('event-console').scrollTop = document.getElementById('event-console').scrollHeight");
|
||||
}
|
||||
}
|
||||
|
||||
void OnClearClick()
|
||||
{
|
||||
Clear();
|
||||
}
|
||||
|
||||
public void Clear()
|
||||
{
|
||||
messages.Clear();
|
||||
|
||||
InvokeAsync(StateHasChanged);
|
||||
}
|
||||
|
||||
public void Log(string message, AlertStyle alertStyle = AlertStyle.Info)
|
||||
{
|
||||
messages.Add(new Message { Date = DateTime.Now, Text = message, AlertStyle = alertStyle });
|
||||
|
||||
InvokeAsync(StateHasChanged);
|
||||
}
|
||||
|
||||
public void Log(object value)
|
||||
{
|
||||
Log(JsonSerializer.Serialize(value));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user