Blazor Grid Live Data Updates

    La función de actualizaciones de datos en vivo Ignite UI for Blazor en Blazor Grid se utiliza para habilitar actualizaciones en tiempo real o casi en tiempo real de los datos que se muestran en la cuadrícula. Esto es extremadamente útil en aplicaciones donde los datos cambian constantemente, como los rastreadores del mercado de valores, los resultados deportivos en vivo o los paneles de control de IoT (Internet de las cosas). IgbGrid puede manejar miles de actualizaciones por segundo y, al mismo tiempo, responder a las interacciones del usuario.

    Ejemplo de actualización de datos en vivo Blazor

    En el ejemplo siguiente se muestra el rendimiento de la cuadrícula cuando todos los registros se actualizan varias veces por segundo. Utilice los controles de la interfaz de usuario para elegir el número de registros cargados y la frecuencia de las actualizaciones. Introduzca los mismos datos en el Gráfico de columnas para experimentar las potentes capacidades de gráficos de Ignite UI for Angular. El Chart botón mostrará los datos de Precios de categoría por región para las filas seleccionadas y el botón de Chart columna mostrará lo mismo para la fila actual.

    EXAMPLE
    DATA
    MODULES
    RAZOR
    JS
    CSS

    ¿Te gusta esta muestra? Obtenga acceso a nuestro kit de herramientas de Ignite UI for Blazor completo y comience a crear sus propias aplicaciones en minutos. Descárgalo gratis.

    Vinculación de datos y actualizaciones

    Un servicio proporciona datos al componente cuando se carga la página y cuando se utiliza el controlador deslizante para recuperar una cierta cantidad de registros. Mientras que en un escenario real los datos actualizados se consumirían desde el servicio, aquí los datos se actualizan en código. Esto se hace para mantener la demostración simple y enfocarse en su objetivo principal: demostrar el rendimiento de la red.

    <IgbGrid Id="grid1" @ref="grid1"><IgbGrid>
    Razor
    public void OnStart()
    {
        this.StartButton.Disabled = true;
        this.ShowChartButton.Disabled = true;
        this.StopButton.Disabled = false;
        var startTimeSpan = TimeSpan.Zero;
        var periodTimeSpan = TimeSpan.FromMilliseconds(Frequency);
    
        this.Timer = new System.Threading.Timer((e) =>
        {
            grid1.Data = this.FinancialDataClass.UpdateRandomPrices(this.CurrentStocks);
        }, null, startTimeSpan, periodTimeSpan);
    }
    razor

    Un cambio en el valor del campo de datos o un cambio en el objeto de datos/referencia de recopilación de datos activará las canalizaciones correspondientes. Sin embargo, este no es el caso de las columnas, que están vinculadas a objetos de datos complejos. Para resolver la situación, proporcione una nueva referencia de objeto para el objeto de datos que contiene la propiedad. Ejemplo:

    <IgbGrid>
        <IgbColumn Field="price.usd"></IgbColumn>
    </IgbGrid>
    Razor
     grid1.Data = this.FinancialDataClass.UpdateRandomPrices(this.CurrentStocks);
    razor

    Plantillas

    La actualización de la vista funciona de la misma manera para columnas con una plantilla predeterminada y para columnas con una plantilla personalizada. Sin embargo, se recomienda mantener las plantillas personalizadas relativamente simples. A medida que crece el número de elementos en la plantilla, también aumenta el impacto negativo en el rendimiento.

    Referencias de API

    Recursos adicionales

    Nuestra comunidad es activa y siempre da la bienvenida a nuevas ideas.