問題タブ [invalidation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3356 参照

django - Django キャッシュからのパスを再帰的に無効化する

次のように、Django キャッシュから単一のパスを削除しています。

これは機能しますが、再帰的に削除する方法はありますか? 私のパスは次のようになります。

ID「123」のグラフが保存されるたびに、両方のパスのキャッシュを無効にする必要があります。これはできますか?

0 投票する
1 に答える
981 参照

wpf - 依存関係プロパティをクリアせずに DataContext を設定するには?

ビューモデル パターンを使用しているため、カスタム ユーザー コントロールの DataContext は、実際には実際のデータのビューモデル ラッパーです。

カスタム コントロールには、カスタム コントロールの階層インスタンスを含めることができます。

実際のデータのカスタム コントロールに DependencyProperty を設定し、バインドによって設定されたときにそのデータの新しいビューモデルを作成し、ユーザー コントロールのデータ コンテキストを新しいビューモデルに設定することを期待しています。ただし、DataContext プロパティを設定すると、実際のデータ DependencyProperty が無効になり、null に設定されるようです。これを回避する方法、またはビューモデルを使用する適切な方法を知っている人はいますか?

私がやろうとしていることのトリミングされたサンプル:

ユーザー コントロール:

ビューモデル:

XAML:

この問題は、Cannot databind DependencyPropertyのコメントで言及されていましたが、解決されませんでした

0 投票する
1 に答える
297 参照

controls - Invalidate() コマンドがコントロールを再描画していない

いくつかの長方形を描画する必要があるカスタム コントロールを開発しようとしています。ここで、1 つの四角形を移動する必要があるため、オーバーライドされた mousemove メソッドを使用して新しい位置を取得し、その四角形の位置部分を変更してから、Invalidate() コマンドを使用しました。しかし、問題は、その四角形ではなくコントロール全体が描画されることです。消えつつあります。誰かが私が間違っているところを指摘できれば、それは大きな助けになるでしょう。ありがとう。

0 投票する
2 に答える
24957 参照

c# - 無効化と更新

数か月間使用しているwinformsのフチなしフォームをドラッグできるコードがあります。これは非常にうまく機能します。

しかし、私が最初にコードを受け取ったとき、それらはフォームthis.Invalidate();のイベントで使用され、MouseMoveフォームは少しちらつき、ドラッグすると遅くなりました。そこで、イベントで交換Invalidate()Update()ましたMouseMoveが、驚いたことに、フォームを非常にスムーズにドラッグできるようになり、ちらつきがまったくなくなりました。

誰かが、Invalidateが使用するのに適切であるように聞こえる場合でも、UpdateによってコードがInvalidateよりもうまく機能する理由を説明できますか?

ありがとう :)

PSコードを追加するともっと役立つかもしれません...今すぐ追加してください。

編集-コードは次のとおりです。


0 投票する
2 に答える
19739 参照

hibernate - JPA EntityManager セッションの無効化

私が取り組んでいるプロジェクトでは、Hibernate をプロバイダーとして Spring 2.5 と JPA を使用しています。

私の DAO クラスは JpaDaoSupport を拡張しているので、getJpaTemplate() メソッドを使用して JpaTemplate を取得します。

バックエンド データベースは、自分のアプリケーションまたはサードパーティ アプリケーションによって変更される可能性があります。

サードパーティのアプリケーションがデータベースを変更した場合 (主に構成データの変更)、アプリケーションのユーザーに、すべての JPA セッションを無効にして新しいデータをリロードする方法を提供する必要があります (つまり、バックグラウンドで休止状態のセッションをすべて無効にします)。これは、アプリケーションのすべての同時ユーザーが「見る」必要があります。

これどうやってするの?

0 投票する
3 に答える
3040 参照

android - invalidate(Rect)が呼び出されたときに、ImageViewはどのようにしてコンテンツの一部を再描画しますか?

私はAndroid開発に不慣れで、ドキュメントを読んでAPIを試しています。invalidate(Rect)を呼び出した後、ImageViewがコンテンツの一部だけを描画する方法については混乱しています。

ImageView.javaを確認しましたが、onDraw(Canvas)以外の描画メソッドは見つかりませんでしたが、onDraw(Canvas)は、ビューの表示境界を超えている場合にのみ描画可能オブジェクトをカットします。View.invalidate(Rect)の実装も読みました。この関数の鍵は、mParent.invalidateChild(this、r);を呼び出すことだと思います。ただし、親ビューは、指定されたRectで子を描画する方法を知らないと思います。最終的に、子のメソッドを呼び出してペイントする必要があります。

誰かがコードのこの部分を調査しましたか?ガイドをお願いします。

0 投票する
1 に答える
531 参照

iphone - iPhone アプリケーションが終了する前にセッションを無効にする

ユーザーが iPhone アプリケーションを終了したときに、進行中のセッションを無効にするようにサーバーに指示したいと思います。

アプリ デリゲートでは、(void)applicationWillTerminate:(UIApplication *)applicationメソッドでサーバーにリクエストを送信します。サーバーの応答を待っているのではなく、リクエストを送信して終了したいだけです。

ただし、アプリケーションから出るパケットは見えません。別の場所の同じコードは正常に機能します。

とにかくセッションの期間は限られており、サーバーはしばらくすると無効になりますが、アプリケーションを離れるときにうまくやりたいと思います。

applicationWillTerminate メソッドから NSURLConnection を確立できないのは正常ですか?

ありがとうございました。

0 投票する
2 に答える
1481 参照

c# - Onpaint イベント (無効化) 一定期間の通常操作 (実行時) 後に実行順序を変更する

ペイント イベントを介して描画される 3 つのデータ グラフがあります。グラフに挿入する必要があるデータがある場合、コントロールの invalidate() コマンドを呼び出します。

最初のコントロールのペイント イベントは、他の 2 つのグラフのビットマップ バッファを実際に作成し、長いループの繰り返しを回避します。

したがって、無効化コマンドは特定の順序 (1、2、3) になっています。これはうまく機能しますが、グラフ化されたデータが通常はスクロールを開始するグラフ ウィンドウ (PictureBox) の最後に到達すると、ペイント イベントが間違った順序 (2、3、1) で発生し始めます。

誰もこれに遭遇したことがありますか?なぜこれが起こっているのでしょうか?

0 投票する
8 に答える
15020 参照

android - (サブ)PreferenceScreen から戻ったときに、PreferenceActivity の既存の Preference-item を更新します。

私は(サブ)PreferenceScreensの束を持つPreferenceActivityを持っています。このような (Sub)PreferenceScreen はそれぞれアカウントを表し、そのタイトルとして account-username を持ちます。

ユーザーが sub-PreferenceScreen に入り、アカウントのユーザー名を編集すると、外側の PreferenceScreen で問題のアカウントの PreferenceScreen-title を更新する必要があります。

私は追加しようとしました...

...しかし、accScreen.setTitle は外側の PreferenceScreen では有効にならないようです。onContentChanged();呼び出すと実際に機能することに注意しましたが、これはおそらく好ましい方法ではないことを認識しています。

どこかで何らかのビューを呼び出す必要postInvalidate()があると思いますが、どのビューでいつそれを行うべきか本当にわかりません。

PreferenceScreen android:まとめ更新!私と同じ悩みを抱えているかもしれません。

どんな助けでも感謝します。

0 投票する
3 に答える
1049 参照

wpf - 長いメソッド処理中にWPF呼び出しが機能しない

次のメソッドは、2番目のメソッド(DoWork)が終了するまで、wpfの変更(background = red)を適用しません。

DoWork()の実行には数秒かかりますが、このコードは複数の場所で使用され、さまざまな間隔でDispatcherスレッドと相互作用する可能性があるため、スレッドに入れたくありません。Invalidate ...()メソッドを呼び出してみましたが、役に立ちませんでした。BeginInvoke()が追加され、ロジックが呼び出される前に遅延によってバックグラウンド変更を適用できるかどうかを確認しました。通常、ロジックはこのメソッドの一部になります。ところで、ほとんどのロジックは別のスレッドで実行され、ディスパッチャースレッドをブロックするべきではありませんか?!

誰か助けてもらえますか?ありがとう