2011-08-14 17 views
0

特定のDependencyPropertiesが変更されたときに外観を更新する必要があるカスタムUIElementを作成しました。しかし、私はUIElementクラスでInvalidateVisualメソッドを見つけることができません。なぜWP7-APIで削除されたのですか?回避策はありますか?Windows Phone 7のUIElement.InvalidateVisual


アップデート:

私がいる問題は、Silverlight/WP7でのすべてのサポートされているカスタムシェイプ誘導体is'ntに関連すると思われます!私はこれを再考しなければならない。

答えて

0

あなたがUIElement.InvalidateVisualのドキュメントをチェックした場合、あなたはそれが述べています:

この方法は、一般的にアプリケーションコードから呼び出されていません。 WPFフレームワークレベルのレイアウトシステムは、要素のビジュアルツリーである の変更を独自に処理し、必要に応じて 相当のメソッドを呼び出します。

依存関係プロパティが変更されたら、UIの状態を更新するだけです。たとえば、幅が依存プロパティの値に依存する四角形がある場合は、依存プロパティのイベント変更ハンドラ内の幅を変更するだけです。レンダリングフレームワークは、必要な無効化を実行します。

+0

InvalidateVisualは、WP7-APIには存在しません。また、FrameworkPropertyMetadata.AffectsRenderが存在しないので、何らかのリフレッシュを手動でトリガーする必要があります。 –

+0

正しいですが、WPFのようなメタデータはありません。ただあなたのUIを直接更新する – ColinE

関連する問題