Htmlテーブルとして形成されたリピーターがあります。プレビューは次のようになります。
| No | Name | Status |
--------------------------------
| 1. | Process A | In Progress |
| 2. | Process B | In Progress |
| 3. | Process C | In Progress |
| 4. | Process D | In Progress |
...
| n. | Process N | In Progress |
--------------------------------
更新パネル内にリピーターを配置しました。
ボタンをクリックすると、フォームはそのような送信プロセス関数を呼び出します。この関数は行ごとにループし、ステータステキストを「進行中」から「送信済み」に設定します。プロセスが約2秒であると仮定します。ステータステキストが割り当てられた後、UpdatePanel.Update()を介してRepeaterのステータステキストを更新したいのですが、私の問題はステータスが更新されないことです。関数が終了した後に更新されます。
send関数は次のようになります。
protected void btnSend_Clicked(object sender, EventArgs e)
{
foreach (RepeaterItem item in rptData.Items)
{
UpdatePanel upnlStatus = (UpdatePanel)item.FindControl("upnlStatus");
Literal litStatus = (Literal)item.FindControl("litStatus");
System.Threading.Thread.Sleep(2000);
litStatusText = "Sent";
upnlStatus.Update();
}
}
私の質問は、これを行うための最良の方法は何ですか?アップデートパネルはこの種のリアルタイムアップデートをサポートしていますか?前もって感謝します。