在后台代码中设置 RenderFragment 默认内容
Set RenderFragment default content in code behind
我有来自 article 的以下代码,它位于 .razor 文件中。 wig-pig 代码部分如何转换为 .razor.cs 文件后面的代码?
[Parameter] public RenderFragment<TItem> ItemTemplate { get; set; }
protected override void OnParametersSet()
{
if (ItemTemplate == null)
{
ItemTemplate = (item) => @:@{
<li @key=item>@item.ToString()</li>}
;
}
}
有点自以为是,但我认为你有点夸大了'code-behind concept'。
ItemTemplate 只会在标记部分使用,我会选择(小)@code 部分:
@code {
[Parameter]
public RenderFragment<TItem> ItemTemplate { get; set; } =
item => @<li @key=item>@item.ToString()</li>;
}
根据 Magoo 先生的评论:
[Parameter]
public RenderFragment<TItem> ItemTemplate { get; set; }
= (TItem item) => (builder) =>
{
builder.OpenElement(0, "li");
builder.SetKey(item);
builder.AddContent(1, item.ToString());
builder.CloseElement();
};
我有来自 article 的以下代码,它位于 .razor 文件中。 wig-pig 代码部分如何转换为 .razor.cs 文件后面的代码?
[Parameter] public RenderFragment<TItem> ItemTemplate { get; set; }
protected override void OnParametersSet()
{
if (ItemTemplate == null)
{
ItemTemplate = (item) => @:@{
<li @key=item>@item.ToString()</li>}
;
}
}
有点自以为是,但我认为你有点夸大了'code-behind concept'。
ItemTemplate 只会在标记部分使用,我会选择(小)@code 部分:
@code {
[Parameter]
public RenderFragment<TItem> ItemTemplate { get; set; } =
item => @<li @key=item>@item.ToString()</li>;
}
根据 Magoo 先生的评论:
[Parameter]
public RenderFragment<TItem> ItemTemplate { get; set; }
= (TItem item) => (builder) =>
{
builder.OpenElement(0, "li");
builder.SetKey(item);
builder.AddContent(1, item.ToString());
builder.CloseElement();
};