我正在使用第三方包中的组件,该组件接受 RenderFragment 作为参数,并且我想通过索引页的部分类为该 RenderFragment 分配一个值。
我意识到当我在标签中构造 RenderFragment 时code,它就可以工作了。但是一旦将其放入 中partial class,Visual Studio 就会开始标记错误。
有效的示例代码:
剃刀文件:
<Statistic Title="Feedback" Value="1128" PrefixTemplate="@prefix1" />
@code {
public RenderFragment prefix1 = @(<Icon Type = "like" />);
}
Run Code Online (Sandbox Code Playgroud)
不起作用的示例代码:
剃刀文件:
<Statistic Title="Feedback" Value="1128" PrefixTemplate="@prefix1" />
Run Code Online (Sandbox Code Playgroud)
部分类:
public partial class Index {
RenderFragment prefix1 = @(<Icon Type = "like" />);
}
Run Code Online (Sandbox Code Playgroud)
所以我现在的问题是,如何在部分类中构造渲染片段?我似乎在网上找不到有关此主题的任何内容。
提前致谢。
正如Magoo 先生建议的那样,我选择了 RenderTreeBuilder ,因为我想让我的业务逻辑远离 UI。
我就是这样做的:
剃刀文件:
<Statistic Title="Feedback" Value="1128" PrefixTemplate="@prefix1" />
Run Code Online (Sandbox Code Playgroud)
部分类:
public partial class OperationCard
{
RenderFragment prefix1 = builder =>
{
builder.OpenComponent<Icon>(1);
builder.AddAttribute(2, "Type", "like");
builder.CloseComponent();
};
}
Run Code Online (Sandbox Code Playgroud)