-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRazorComponent.cs
27 lines (25 loc) · 996 Bytes
/
RazorComponent.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using Microsoft.AspNetCore.Components;
using Microsoft.Extensions.Logging;
//using Microsoft.Extensions.Hosting;
//using Microsoft.MobileBlazorBindings;
using System;
using Xamarin.Forms;
namespace LivingThing.Core.Frameworks.XamarinRazor
{
internal class RazorComponent : ContentView
{
public RazorComponent(Type type, IServiceProvider serviceProvider, Action<object> parameterSetter = null)
{
var renderer = new RazorComponentRenderer(serviceProvider);
_ = renderer.AddComponent<Element>(type, this, parameterSetter);
}
}
public class RazorComponent<TRazorComponent> : ContentView where TRazorComponent : ComponentBase
{
public RazorComponent(IServiceProvider serviceProvider, Action<TRazorComponent> parameterSetter = null)
{
var renderer = new RazorComponentRenderer(serviceProvider);
_ = renderer.AddComponent<TRazorComponent,Element>(this, parameterSetter);
}
}
}