1

Lightswitch HTML クライアントでは、特定のビジネス プロセスの進行中の作業を表示する画面を作成しました。

これは、アルゴスに注文を取りに行くときのように、大画面に表示されます。これがスクリーンショットです...

ここに画像の説明を入力

30 秒ごとにページを更新するために、いくつかの Java スクリプトを使用しています。

setTimeout(function () {
    window.location.reload(1);
}, 30000);

ただし、これには 2 つの問題があります。

  1. ユーザーが入力した「結果の最大数」テキストは、更新時に失われます。
  2. ページ全体を更新するのは見栄えがよくありません。

したがって、ページ全体ではなく、各クエリをリロードするようにトリガーすることは可能ですか?

(データは WCF RIA サービスによって LightSwitch に提供されます)

4

3 に答える 3

3

私は同じ問題を抱えていて、最終的に解決策を見つけました。作成したイベントにこれを追加しました:

myapp.BrowseMembers.created = function (screen) {
    setInterval(function () {screen.Members.load(true);}, 1000);
};

Ii は機能しますが、データをリロードするときに画面がちらつくだけです。setTimeout は 1 回だけトリガーされますが、setInterval は 1 秒ごとにトリガーされます。

于 2013-07-20T13:33:24.133 に答える
3

JavaScript では、 を使用しますscreen.MyList.load()。リストを非同期的にリロードします。

IntelliSense は常にオブジェクトのリスト名を提案するとは限りませんがscreen、名前を入力すると認識されることに注意してください。

setTimeout()メソッドとcreated画面イベントを組み合わせると、うまくいくはずです。

于 2013-04-19T07:53:21.923 に答える