問題タブ [visualstatemanager]

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 に答える
1837 参照

silverlight - MVVMvisualstatemanagerとフォーカス

Silverlight4を使用します。

コントロールには2つの視覚的な状態があります。状態が変化したときに、フォーカスをあるテキストボックスから別のテキストボックスに変更したいと思います。

MVVMを使用してこれを行うための最良の方法は何ですか?

私はそれまたは振る舞いをするためにvisualstatemanagerを使用することを望んでいました...しかし私は方法を理解していません。

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

silverlight - XAML 定義の Visual States で Storyboard リソースを参照できますか?

独自の Visual State Manager を持つ 6 つの異なるオブジェクトがあります。各オブジェクトの Focused 状態は同じです。単一の Focused State Storyboard リソースを定義し、6 つの Focus Visual 状態のそれぞれでそれを参照したいと考えています。これはできますか?これが私のコードです(すべて同じUserControl.Resourcesにあります):

私の6つのオブジェクトのそれぞれに、次のものがあります。

プロジェクトを実行すると、次のエラーが表示されます。

メッセージ: 属性 {StaticResource FocusedState} の値が範囲外です。

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

silverlight - Silverlight での VisualState の継承

から継承しRadioButton、画像を表示してデフォルトの円を非表示にする以上のことをしないコントロールを作成しています。

私が知ることができなかった 1 つのことはVisualStates、ControlTemplate ですべてを再実装する必要があるかどうか、または単純にそれらを空の要素として配置して継承できるかどうかです。

私の XAML は以下にあり、元の RadioButton は MSDN にあります。

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

wpf - アニメーション付きのMVVM(VisualStateManagerを使用する必要がありますか?)

リソースセクションに次のセットが含まれるView.xamlがあります。

View.xamlのコンテンツには、次のものがあります。

SelectedMyViewModelが変更されたら、アニメーションを作成して、現在のビューがフェードアウトし、新しいビューがフェードインするようにします...

どういうわけか、これはVisualStateManagerを介して可能になるはずだと思いますが、その方法がわかりません。

これはWPF4.0プロジェクトです...

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

wpf - WPF: VisualStateManager が機能しない

VisualStateManager の仕組みを理解しようとしていますが、できません。

私はこれをしたい: ユーザーが自分の名前、住所などを入力できる TextBoxes がいくつかあり、検証を行っていますが、XAML の validationrules-binding でそれを行いたくありませんでした。私はMVVMパターンを使用していますが、ビューモデルのいくつかのコードがそれを行います。したがって、テキストボックスのテキストを、ビューモデルが検証した文字列にバインドしています。そこには、それが正しいかどうかを示すブール変数があります。

私のXAML:

ユーザーのフォーカスがテキストボックスから離れると、次のイベントが発生します。

イベントが発生し、正しい GoToState-Method に移動しますが、試してみましたが、状態は変更されません。何も起こりません。


ExtendedVisualStateManager.GoToElementState(this.Border1 as FrameworkElement, "NameValid", false);も試しました。

私はここでそれが役立つと読んだので、それはそれとまったく同じです...

私は何を間違えましたか??

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

wpf - WPF でデータ バインドされた列挙型から Visual State を設定する

こんにちは、4 つの異なるコンテンツ コントロールの表示を切り替えたいシナリオがあります。不透明度を設定し、指定された各状態に基づいて折りたたまれた視覚状態 (コードを参照)。私がやりたいのは、視覚状態を Enum 型のビュー モデルのプロパティにバインドすることです。DataStateBehavior を使用してみましたが、true/false が必要で、うまくいきません。だから私は DataStateSwitchBehavior を試しましたが、これは私が知る限り、WPF4 では完全に壊れているようです。これを行うためのより良い方法はありますか?必要に応じて、さまざまなアプローチを受け入れますが、この列挙型を方程式に入れておきたいと思います。

編集:

コードはあまり重要ではありません。この問題に対するよく知られた解決策があるかどうかを知りたいだけです。

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

silverlight - タイマーイベントに基づいてBlend 4 VisualStateManagerで状態を回転させますか?

3 つの VisualStates を持つ Blend で Silverlight 4 UserControl を構築しています。

数秒遅れて最初の状態から 2 番目の状態に、さらに数秒後に 2 番目の状態から 3 番目の状態に、さらに遅れて 3 番目の状態から最初の状態に変化し、そのように回転し続けたいと思います。

基本的に、これは非常に原始的な「広告ローテーター」であり、私が構築しているプロトタイプにいくつかの静止画像を使用しています。

Blendを使用してこれを行うことは可能ですか? もしそうなら、どのように?TimerTriggers と ActivateStateAction ビヘイビアーを使用して最初の完全なローテーションを作成することはできますが、タイマーをリセットする方法や、別のアプローチがうまく機能するかどうかはわかりません。

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

silverlight - 別の VisualStateGroup でのアニメーションのトリガー

VisualStateGroup私が理解していない sについての基本的なことがあります。私が読んだすべてのことから、それらが直交していると信じるようになりました。つまり、あるグループの状態が変化しても、他のグループには影響しません。実際、そうでないと意味がありません。

ただし、私が遭遇したいくつかの奇妙な動作を理解しようとして、あるグループの状態変化が別のグループのアニメーションをトリガーできることを示す簡単な例をまとめました。私はこれがどのようにできるかを理解しようとしています。

私が望むのは、たとえば、フォーカスがあるかどうか、またはマウスがその上にあるかどうかに関係なく、ToggleButtonトグル ( ) されたときに 1 つの外観を持つベースのコントロールだけです。IsChecked == true

まず、カスタム グループ内のカスタム状態間を遷移する非常に単純なコントロールがあります。

次に、現在の状態に基づいて背景色を変更するこのコントロールのテンプレートがあります。

ほとんどの場合は機能しますが、コントロールがフォーカスを失うと、通常の状態に戻ります。

コントロールでフォーカスの変更を明示的に処理し、状態の更新を実行することで、これを回避できます。

しかし、なぜ私がこれをしなければならないのか、私には意味がありません。

1 つの状態が変化するとVisualStateGroup、別のアニメーションで定義されたアニメーションが実行されるのはなぜですか? そして、私が述べた目標を達成するための最も簡単で最も正しい方法は何ですか?

ありがとう

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

silverlight - 特定の視覚的状態で費やされる最小時間を課す

コントロールが最小限の時間、特定の状態のままであることを確認したいと考えています。コントロールには と の 2 つの状態がLoadingありLoadedます。Loading状態はアニメーションを表示し、状態Loadedはデータを表示します。2 つの状態の間にフェードイン/フェードアウト遷移があります。

ただし、問題は、データの読み込みが速すぎて、アニメーションが画面上で一瞬フリックアップし、すぐにフェードアウトする場合があることです。これは見栄えが悪いので、私がやりたいことは、Loading状態で費やされる最小時間 (0.5 秒など) を強制することです。そうすれば、データがすばやく読み込まれる場合でも、読み込みアニメーションは少なくとも十分長く表示されるので、不快な効果はありません。

私はVisualStateManager想像力でMinimumTimeVisualStateManager. ただし、この追加のコードを必要とせずに、目的を達成するための組み込みの方法があるかどうか疑問に思っています。

ありがとう

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

silverlight - VisualState で Silverlight リソースを変更する

異なる VisualState 間でコントロールのある種の共有リソース (つまり、ブラシ) を変更する簡単な方法があるかどうか疑問に思っています。たとえば、Brush を定義して、Border の Background と別の Rectangle の Fill の両方として使用したいと考えています。別の VisualState で、この背景ブラシを 1 か所 (リソース) で変更し、リソースを使用するすべての要素に反映させたいと考えています。

VisualState の Storyboard の TargetName の名前 (キーではなく) でリソースを参照できるかどうかはわかりません。

XAML でやろうとしていることの簡単な例を次に示します。

これらはSilverlightのStaticResourcesであるため、一度しかロードされず、変更できないと感じています。私は、WPF に DynamicResources の概念があることを知っています。すべての要素でブラシを再定義することなく、Silverlight でこの種の動作を実現する方法はありますか?