【问题标题】:Blazor in Windows Forms App: Layout not loadingWindows 窗体应用程序中的 Blazor:未加载布局
【发布时间】:2021-10-05 12:11:15
【问题描述】:

我试图在 Windows 窗体中的 webview2 控件中托管 blazor,但是我设计的布局没有加载,因此页面加载不正确,webview2 中有一个 LayoutEngine 属性,我不知道如何设置:

 BlazorWebView blazorWeather = new BlazorWebView()
            {
                Dock = DockStyle.Fill,
                HostPage = "wwwroot/index.html",                    
                Services = serviceProvider,
                 LayoutEngine = 
            };

这是解决这个问题的方法吗?我应该为此设置什么值?

编辑:

这是将 webviews 添加到 Form1 的代码,当我添加布局仅布局显示时,当我添加组件时,它显示:

 using (ServiceProvider serviceProvider = services.BuildServiceProvider())
        {
            BlazorWebView blazorLayout = new BlazorWebView()
            {
                Dock = DockStyle.Fill,
                HostPage = "wwwroot/index.html",
                Services = serviceProvider,

            };

            blazorLayout.RootComponents.Add<MainLayout>("#app");


            BlazorWebView blazorComponent = new BlazorWebView()
            {
                Dock = DockStyle.Fill,
                HostPage = "wwwroot/index.html",                    
                Services = serviceProvider
            };
            
            blazorComponent.RootComponents.Add<CoronaVirus>("#app");
            var form1 = new Form1(); // serviceProvider.GetRequiredService<Form1>();
            form1.Controls.Add(blazorLayout);
            form1.Controls.Add(blazorComponent);                
            Application.Run(form1);
        }

【问题讨论】:

    标签: blazor windows-forms-core


    【解决方案1】:

    我在 blazor 中创建了一个类似于默认 App 的 App 组件并写了这个:

    BlazorWebView blazorApp = new BlazorWebView()
                {
                    Dock = DockStyle.Fill,
                    HostPage = "wwwroot/index.html",
                    Services = serviceProvider,
    
                };
                blazorApp.RootComponents.Add<App>("#app");
    

    这解决了我的问题。

    编辑:

    更正确的答案是将组件标记包装在布局视图中:

    <LayoutView Layout="@typeof(MainLayout)">
    </LayoutView>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-21
      • 2016-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多