1

我在 Razor 组件中有以下代码:

   <SfGrid TValue="DataItem" ID="Grid"
            DataSource="@DataList01"
            AllowSorting="false"
            AllowFiltering="false"
            AllowSelection="true"
            AllowPaging="false">
      <GridSelectionSettings Type="Syncfusion.Blazor.Grids.SelectionType.Single"></GridSelectionSettings>
      <GridColumns>
        <GridColumn Field="@DataText" HeaderText="Data"></GridColumn>
      </GridColumns>
    </SfGrid>

使用该代码时,我可以选择任何行。但是,如果我添加事件处理:

   <SfGrid TValue="DataItem" ID="Grid"
            DataSource="@DataList01"
            AllowSorting="false"
            AllowFiltering="false"
            AllowSelection="true"
            AllowPaging="false">
      <GridSelectionSettings Type="Syncfusion.Blazor.Grids.SelectionType.Single"></GridSelectionSettings>
      <GridEvents TValue="DataItem" RowSelected="@(row=> SelectedRow = row.Data)" />
      <GridColumns>
        <GridColumn Field="@DataText" HeaderText="Data"></GridColumn>
      </GridColumns>
    </SfGrid>

@code {
    public DataItem SelectedRow { get; set; }
}

单击后选择消失并重新加载数据。

你能告诉我为什么吗?我应该改变什么?

4

2 回答 2

1

嗯,答案就在看不见的细节中。

代码中网格的数据源毕竟意义重大:

DataSource="@DataList01"

它是一个基于 gRPC 的流,事实证明,让它流数据会导致网格在每次事件交互时都被刷新。

使用它提供的数据的本地副本后,选择工作正常。

于 2021-03-10T19:55:04.730 回答
0

您能否就您所面临的问题分享以下信息。因为在使用您的代码示例和最新版本 Syncfusion.Blazor Nuget 包 18.4.0.47 准备示例时,我们无法在最后重现报告的问题。

示例:https ://www.syncfusion.com/downloads/support/directtrac/general/ze/DataGrid-2097295582

分享以下详细信息,如果您仍然面临报告的问题

  1. 分享您的 Syncfusion.Blazor Nuget 包版本详细信息。
  2. 分享问题的视频演示。
  3. 尝试在提供的示例中重现报告的问题。
于 2021-03-10T12:01:28.530 回答