在 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) 组件中添加多个组件的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Font Awesome 添加到 Blazor 客户端(Razor 组件)应用程序?
如何使用 Blazor 和 NetCore 5 在电子邮件中将 razor 组件作为正文发送?
如何从 Blazor 服务器端应用程序中的 Razor 页面导航到 Blazor 组件?
.NET Core - 为啥我应该使用视图组件而不是集成在 MVC 应用程序或 Razor 页面中的 Blazor 组件