如何在背后的Blazor代码中将方法传递给EventCallback?

时间:2020-05-15 17:06:55

标签: blazor blazor-server-side

使用Blazor(.Net Core v3 +)代码背后时,我无法将方法名称传递给带有事件回调参数的组件。但是,在剃须刀组件中使用@code { }时,我可以将方法名称传递给组件的事件回调。

在后面使用代码时发生编译器错误,请参见下文:

参数2:无法从方法组转换为EventCallback。

@page "/localized-strings"

@inherits LocalizedStringTypesBase

<SfGrid DataSource="@MyDataSource">
    <!-- Argument 2: Error Here for RowSelected="OnDataGridRowSelect"  -->
    <GridEvents RowSelected="OnDataGridRowSelect" TValue="LocalizedStringType"></GridEvents>
</SfGrid>

public class LocalizedStringTypesBase : ComponentBase
{
    public void OnDataGridRowSelect(RowSelectEventArgs<LocalizedStringType> args)
    {
        // not implemented yet
    }
}

此错误随@code { }块而消失,请参见下文。

@page "/localized-strings"

<SfGrid DataSource="@MyDataSource">
    <!-- No Error Here for RowSelected="OnDataGridRowSelect"  -->
    <GridEvents RowSelected="OnDataGridRowSelect" TValue="LocalizedStringType"></GridEvents>
</SfGrid>


@code {

    public void OnDataGridRowSelect(RowSelectEventArgs<LocalizedStringType> args)
    {
    // not implemented yet
    }
}

0 个答案:

没有答案