|
<GridEvents OnActionBegin="ActionBeginHandler" TValue="Order"></GridEvents>
|
@page "/Test" |
On this page i cant type anything. also my described behaviour using space and the arrow keys are present here.
Please let me know if you need something else.
|
<DetailTemplate>
<div class="container-fluid">
<div class="row">
<div class="col-xl-6" @onkeydown:stopPropagation="true">
@{
var project = (context as Project);
<SfRichTextEditor Width="100%" Height="100%" EnableResize="true" @bind-Value="@protocol.Text">
</SfRichTextEditor>
}
</div>
...
</div>
</div>
</DetailTemplate>
|
...
<GridColumn HeaderText="Anmerkung">
<Template>
@{
var localAkquise = (context as Akquise);
@((MarkupString) localAkquise.Note)
}
</Template>
<EditTemplate>
<div @onkeydown:stopPropagation="true">
@{
var localAkquise = (context as Akquise);
<SfRichTextEditor @ref="RtfObj" Items="Tools" Width="100%" Height="100%" EnableResize="true" @bind-Value="@localAkquise.Note" Readonly="false" @onkeydown="onkeydown">
<RichTextEditorToolbarSettings EnableFloating="true" Items="@RtfToolsPresets.Inline" Type="ToolbarType.Expand"/>
</SfRichTextEditor>
}
</div>
</EditTemplate>
</GridColumn>
...
<SfGrid @ref="@ProjectTable" DataSource="@Projects" ContextMenuItems="@MenuItems" AllowSorting="true">
<GridEvents ContextMenuItemClicked="OnContextMenuClick" TValue="Project"></GridEvents>
<GridEditSettings AllowAdding="true" AllowEditing="true" AllowDeleting="false"></GridEditSettings>
<GridTemplates >
<DetailTemplate>
<div class="container-fluid">
<div class="row">
<div class="col-xl-6" @onkeydown:stopPropagation="true">
@{
var project = (context as Project);
ProjProtocol protocol = GetProtocol(project);
<SfRichTextEditor @onfocusout="@(eventArgs => { RtfFocusLost(eventArgs, protocol); })" Items="Tools" Width="100%" Height="100%" EnableResize="true" @bind-Value="@protocol.Text" Readonly="false">
<RichTextEditorToolbarSettings EnableFloating="true" Items="@RtfToolsPresets.Inline" Type="ToolbarType.Expand"/>
</SfRichTextEditor>
}
</div>
<div class="col-xl-6">
@{
//var project = (context as Project);
<SfGrid @ref="@TodoGrids[project.ProjectId]" TValue="ProjTodo" DataSource="@Todos" Query="@GetQueryProjectId(project.ProjectId)" AllowFiltering="true" AllowSorting="false" AllowPaging="true" Toolbar="@(new List<string>() {"Add", "Edit", "Delete"})">
<GridEvents OnBeginEdit="@BeginEditHandler" RowDataBound="@RowBound" OnActionComplete="@ActionBegin" TValue="ProjTodo"></GridEvents>
<GridEditSettings AllowAdding="true" AllowEditing="true" AllowDeleting="false"></GridEditSettings>
<GridFilterSettings ImmediateModeDelay="300" Mode="FilterBarMode.Immediate"></GridFilterSettings>
<GridColumns>
<GridColumn IsPrimaryKey="true" AllowAdding="false" AllowEditing="false" Field="@nameof(ProjTodo.TodoId)" Visible="false" HeaderText="TodoId"></GridColumn>
<GridColumn AllowAdding="false" AllowEditing="false" DefaultValue="@project.ProjectId" Visible="false" Field=@nameof(ProjTodo.ProjectId) HeaderText="ProjectId"></GridColumn>
<GridColumn Width="100px" TextAlign="TextAlign.Center" AllowFiltering="false" HeaderText="Done">
<Template Context="todoContext">
@{
var todo = (todoContext as ProjTodo);
<input type="checkbox" class="checkbox-big" checked="@todo.Done" @onchange="@(eventArgs => { todoCheckboxChanged(eventArgs, todo); })">
}
</Template>
</GridColumn>
<GridColumn Field=@nameof(ProjTodo.Text) Type="ColumnType.String" HeaderText="Text"> </GridColumn>
<GridColumn DefaultValue="@DateTime.Today" AllowAdding="false" AllowEditing="false" Visible="false" Field=@nameof(ProjTodo.CreatedAt) HeaderText="Created"></GridColumn>
<GridColumn DefaultValue="@DateTime.Today" AllowAdding="false" AllowEditing="false" Visible="false" Field=@nameof(ProjTodo.UpdatedAt) HeaderText="Updated"></GridColumn>
</GridColumns>
</SfGrid>
}
</div>
</div>
</div>
</DetailTemplate>
</GridTemplates>
<GridColumns>
@* <GridColumn Field="@nameof(Project.ProjectId)" HeaderText="Id" IsPrimaryKey="true"> </GridColumn> *@
<GridColumn Field="@nameof(Project.Customer)" HeaderText="Kunde"> </GridColumn>
<GridColumn Field="@nameof(Project.Projektart)" HeaderText="Projektart"> </GridColumn>
<GridColumn Field=@nameof(Project.Umsatz) HeaderText="Umsatz"> </GridColumn>
<GridColumn Field=@nameof(Project.Db) HeaderText="Db"> </GridColumn>
<GridColumn Field=@nameof(Project.Dl) HeaderText="Dl"> </GridColumn>
<GridColumn Field=@nameof(Project.ProjectPhase) HeaderText="Phase"> </GridColumn>
</GridColumns>
</SfGrid>
ProjProtocol protocol = GetProtocol(project);
private ProjProtocol GetProtocol(Project project)
{
ProjProtocol projProtocol;
using (var context = _contextFactory.CreateDbContext())
{
projProtocol = context.Protocols.SingleOrDefault(p => p.ProjectId == project.ProjectId);
}
return projProtocol ?? new ProjProtocol(project);
}
|
<GridTemplates>
<DetailTemplate>
<div class="container-fluid">
<div class="row"> <SfRichTextEditor ... @bind-Value="@protocol.Text" Readonly="false">
<RichTextEditorEvents ValueChange="ValueChange"></RichTextEditorEvents>
</SfRichTextEditor> ...
</div>
</div>
</DetailTemplate>
</GridTemplates>
public void ValueChange(Syncfusion.Blazor.RichTextEditor.ChangeEventArgs args)
{
RTEValue.Text = args.Value;
}
ProjProtocol RTEValue = new ProjProtocol() { Text = "RTEdata" };
public ProjProtocol GetProtocol(Project project)
{
return RTEValue;
}
|
|
List<ProjProtocol> Protocols { get; set; }
protected override void OnInitialized()
{
...
using (var context = _contextFactory.CreateDbContext())
{
//fetch the Protocols and assign to a list
Protocols = context.Protocols;
}
}
private ProjProtocol GetProtocol(Project project)
{
ProjProtocol projProtocol;
projProtocol = Protocols.SingleOrDefault(p => p.ProjectId == project.ProjectId);
return projProtocol ?? new ProjProtocol(project);
}
|