Bojjaiah Ответов: 1

Загрузка данных в сетку в режиме реального времени с бесшумным обновлением ASP.NET


Я пытаюсь реализовать Реальное время загрузка данных в сеточное представление с бесшумным обновлением ASP.Net-да. Для этого материала я попробовал ниже код.

Что я уже пробовал:

Умолчанию.aspx-файл страница



<script type="text/javascript">

        function EndGetData(arg) {
            document.getElementById("divScroll").innerHTML = arg;
        }
        setTimeout("<%=CallbackRef %>", 100)

    </script>
    <div id="divScroll">
        <asp:GridView ID="Grid" BorderColor="Turquoise" runat="server">
        </asp:GridView>
    </div>


Умолчанию.aspx-файл.в CS Страница

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;

public partial class Default3 : System.Web.UI.Page,ICallbackEventHandler
{

    public string CallbackRef;
    public string _Callback;

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsCallback)
        {
            CallbackRef = ClientScript.GetCallbackEventReference(this, "'bindgrid'", "EndGetData", "'asyncgrid'", false);
        }
    }

    public void GetAuditData()
    {
        DataTable dt = new DataTable();
        dt.Columns.Add("ID");
        dt.Columns.Add("Name");
        DataRow r = dt.NewRow();
        r[0] = "1";
        r[1] = "ABCD";
        DataRow r1 = dt.NewRow();
        r1[0] = "2";
        r1[1] = "XYZD";
        DataRow r2 = dt.NewRow();
        r2[0] = "3";
        r2[1] = "123D";

        dt.Rows.Add(r);
        dt.Rows.Add(r1);
        dt.Rows.Add(r2);

        Grid.DataSource = dt;
        Grid.DataBind();
    }

    public string GetCallbackResult()
    {
        return _Callback;
    }

    public void RaiseCallbackEvent(string eventArgument)//This function aceepts only one argument: That too only String Argument:
    {
        GetAuditData();
        using (System.IO.StringWriter sw = new System.IO.StringWriter())
        {
            Grid.RenderControl(new HtmlTextWriter(sw));
            _Callback = sw.ToString();
        }
    }


}


Не могли бы вы, пожалуйста, предложить нам или дать мне пример кода, чтобы сделать это, как https://demos.devexpress.com/aspxgridviewdemos/databinding/Live.aspx-да.

1 Ответов

Рейтинг:
7

F-ES Sitecore

Самый простой способ сделать это-поместить ваш gridview в asp:UpdatePanel и использовать asp:Timer

Учебник: Как обновить элемент управления UpdatePanel с заданным интервалом времени[^]


Bojjaiah

Хороший ответ. Есть ли у нас пример для gridview такой же, как тикер времени с меткой.

Bojjaiah

Я вернусь после того, как попробую. Спасибо.