我的所有组件都在我的共享 RCL 库中。 我的共享组件库页面中有一个按钮
当我单击此按钮时,我想显示一个仅存在于我的 MAUI 项目中的页面。
我该怎么做?
<MudButton OnClick="@(NavigateToEdit(Profile.UserId))">
<MudText>Edit</MudText>
</MudButton>
这是我的MAUI项目中的方法
<SharedPage/>
public void NavigateToEdit(string UserId)
{
MAUIProject () => MauiONLYPage(UserId)
}
您可以使用 DI 服务来定义每个应用程序的配置。
public interface IUIConfigurationService<TRecord>
{
public Type? EditForm { get; set; }
public string? EditFormUrl { get; set; }
}
然后在Maui项目中你使用这个服务:
public class MauiUIConfigurationService: IUIConfigurationService<WeaatherForcast>
{
public Type EditForm { get; set; } = typeof(Home);
public string? EditFormUrl { get; set; } = null;
}
在网络项目中:
public class WebUIConfigurationService : IUIConfigurationService<WeaatherForcast>
{
public Type EditForm { get; set; } = null;
public string? EditFormUrl { get; set; } = "/weatherforecast/Editor";
}
您的
NavigateToEdit
方法将存在于共享库表单中,并根据注入的服务做出导航决策。