LANCommander/LANCommander.UI/Components/SplitPane/SplitPane.razor

26 lines
840 B
Text
Raw Permalink Normal View History

2026-01-03 15:52:09 -06:00
@using LANCommander.UI.Extensions
@using LANCommander.UI.Providers
2026-01-03 15:52:09 -06:00
@using Microsoft.JSInterop
@inject ScriptProvider ScriptProvider
2025-09-06 13:09:47 -05:00
@namespace LANCommander.UI.Components
<CascadingValue Value="this" IsFixed="@true">
2026-01-03 15:52:09 -06:00
<div id="split-pane-@(_paneId.ToString())" class="split-pane @Class" style="@Style">
@ChildContent
</div>
</CascadingValue>
@code {
[Parameter] public RenderFragment ChildContent { get; set; }
[Parameter] public string Class { get; set; } = "";
2024-08-19 21:17:52 -05:00
[Parameter] public string Style { get; set; } = "";
2026-01-03 15:52:09 -06:00
private readonly Guid _paneId = Guid.NewGuid();
private IJSObjectReference? _splitPane;
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
_splitPane ??= await ScriptProvider.ImportModuleAsync<SplitPane>(_paneId);
}
}