在 Blazor (.razor) 组件中添加多个组件
Posted
技术标签:
【中文标题】在 Blazor (.razor) 组件中添加多个组件【英文标题】:Adding multiple components in Blazor (.razor) component 【发布时间】:2021-11-23 02:27:37 【问题描述】:如何在 Razor 中实现这一点? 渲染一(1)个片段(Panel)很简单,但是如何定义这些 i 代码呢?
我可以创建一个呈现面板的类,但它不能具有 Parameter 属性。 不同的面板,例如。 Layout.GridView 有它自己的特点。
[Parameter]
public RenderFragment Panel get; set;
<GroupPanel PanelType="PanelType.Display">
<Panel Layout="Layout.GridView"></Panel>
<Panel Layout="Layout.ListView"></Panel>
<Panel Layout="Layout.DisplayView"></Panel>
</GroupPanel>
【问题讨论】:
你的问题没有包含足够的信息来确定地回答这个问题,除了做出一些疯狂的猜测。<GroupPanel>
是什么?您引用的代码是否在同一个组件中?如果@Mayur Ekbote 的回答回答了您的问题,请忽略此问题,否则请更新问题的更多细节。
【参考方案1】:
RenderFragment 本质上是 blazor 组件的占位符。它可以显示多个组件。
GroupPanel.razor
<PanelContainer PanelType="PanelType.Display">
@Panels
</PanelContainer >
@code
[Parameter]
public RenderFragment Panels get;set;
// other parameters like PanelType
Index.razor
<GroupPanel PanelType="PanelType.Display">
<Panels>
<Panel Layout="Layout.GridView"></Panel>
<Panel Layout="Layout.ListView"></Panel>
<Panel Layout="Layout.DisplayView"></Panel>
<Panels>
</GroupPanel>
【讨论】:
以上是关于在 Blazor (.razor) 组件中添加多个组件的主要内容,如果未能解决你的问题,请参考以下文章
在组件中导入 javascript 文件并在多个页面上使用时出现 Blazor JSRuntime 问题
将服务器端 Blazor 添加到现有 MVC Core 应用程序