summaryrefslogtreecommitdiff
path: root/Pages/Component/Dialog.razor
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2023-08-15 15:49:14 +1000
committerJake Mannens <jake@asger.xyz>2025-08-18 10:59:32 +1000
commit38c60cee378b9c2ad42fc9dc79bc492b919a68f5 (patch)
tree6b62f84aab4b7866432e5da8ae8fcb889795d58b /Pages/Component/Dialog.razor
parent07a4c7ead01514bd3f304f00abc38140a1d73634 (diff)
Convert Razor pages to Blazor
Diffstat (limited to 'Pages/Component/Dialog.razor')
-rw-r--r--Pages/Component/Dialog.razor38
1 files changed, 38 insertions, 0 deletions
diff --git a/Pages/Component/Dialog.razor b/Pages/Component/Dialog.razor
new file mode 100644
index 0000000..1e2929a
--- /dev/null
+++ b/Pages/Component/Dialog.razor
@@ -0,0 +1,38 @@
+<div style="@style" class="@(visible ? "visible" : "")">
+ @if(Title is not null) {
+ <p>@Title</p>
+ <hr/>
+ }
+ @ChildContent
+</div>
+
+@code {
+ [Parameter]
+ public string? Title { get; set; }
+
+ [Parameter]
+ public RenderFragment ChildContent { get; set; }
+
+ public bool Visible {
+ get => visible;
+ set {
+ visible = value;
+ StateHasChanged();
+ }
+ }
+
+ [Parameter]
+ public int HeightPixels { set => height = $"{value}px"; }
+ [Parameter]
+ public int HeightPercent { set => height = $"{value}%"; }
+
+ public void Show() => Visible = true;
+ public void Hide() => Visible = false;
+
+ private bool visible = false;
+
+ private string? height;
+
+ private string style =>
+ $"{(height is null ? "" : $"max-height:{height};")}";
+}