問題タブ [multidatatrigger]

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

c# - wpf textbox のカンマ区切りの数字の正規表現検証を作成する方法

私は、空のテキストボックスまたは or 、 、 のようなテキストと一致するようにaをWPF (.NET 3.5)検証する必要があるアプリケーションを開発しています。私が使う表現は です。 textboxregular expression0214505145021450587902445^(0(2|5)[0-9]{3})?((,0(2|5)[0-9]{3})*?)$

空のテキストボックスを持たせないというだけで、ほとんど機能します。ここにいくつかのコードがあります

検証に使用されるクラスは以下のとおりです

これはうまくいきますが、txtNumbersテキストボックスに1つ以上の数字を入力しない限り、送信ボタンはアクティブになりません。空のテキストボックスを許可したいだけです。どうすればそれを達成できますか?読んでくれてありがとう

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

wpf - リストビューでのハイパーリンクフォアグラウンドスタイリングが発生しない

私は私を怒らせている問題を抱えています、そして私はただ解決策を見つけることができないようです。

私はリストビューを持っています。そのlistivewItemTemplateは、次のようなデータテンプレートです。

ハイパーリンクのスタイルは次のとおりです。

そのまま使用すると、アイテム選択時のように前景が白くなりません。コマンドが期待どおりに有効になっていない場合は、前景が灰色になります。Selector.IsSelectionActiveの条件を削除すると、アイテムが選択されているときに前景が白になりますが、アイテムが選択されているがアクティブでない場合も白になります。非アクティブな選択を緑にします。平面のTextblock、非常に基本的なスタイルのボタンだけでもこれを試しました...何も機能していないようです。

リストビューは、別のユーザーコントロールで使用されているユーザーコントロールにあります。Datatemplateは2番目のユーザーコントロールのresourcedictionaryにあり、タイプDataTemplateの最初のユーザーコントロールの依存関係プロパティにバインドされており、ハイパーリンクのスタイルは別のResourcedictionaryにあります。

どんな助けでも大歓迎です

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

wpf - チェックボックスの状態に応じたWPFスタイル

プラグイン作成者がプラグインを構成するための独自のユーザーインターフェイスを定義できる設定エディターを作成しています。チェックボックスがオフの場合、特定の「高度な」要素を非表示にする機能を実装しています。

チェックボックスXAMLは簡単です。

理想的には(これについては後で詳しく説明します)、実装者は次のように高度なコントロール([詳細]チェックボックスがオフの場合は非表示にする必要があります)にフラグを追加するだけです。

IsAdvanced="True"問題は、要素を非表示にする魔法を作ることにありますisAdvanced.IsChecked == false。私はウィンドウ要素でこのスタイルで望ましい振る舞いをしています:

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

  1. ボタンに機能を追加するだけで、他には何も追加しません。フラグは、任意の視覚要素IsAdvancedに追加できます(追加できるはずです) 。
  2. ボタンにあるスタイルを置き換え/オーバーライドします。

必要な機能を作成する他の方法はありますか?コードビハインドで作業することを恐れていませんが、エレガントなXAMLソリューションが理想的です(これは、ユーザーの設定でチェックボックスの状態を保存することを除けば、純粋にUIの変更であるため)。


高度な要素を表す他のいくつかの方法が思い浮かびました。これには、動的リソースの使用と直接バインディングが含まれます。

リソースディクショナリを使用することはおそらく機能しますが、UI状態がディクショナリに属する​​べきではないように見えるため、これは本当に悪い解決策のようです。チェックボックスの状態を何らかの方法で要素に送信する必要があるため、手動でバインドすることは非常に混乱します。値をハードコーディングすることを除けば、混乱しないように見えます。

これらの代替ソリューションは両方とも、セマンティクス(「これは高度なオプションです」)を外観(「高度なオプションは折りたたむ必要があります」)に結び付けます。HTMLの世界から来た私は、これが非常に悪いことであることを知っています。絶対に必要な場合を除いて、これらのメソッドを送信することを拒否します。

0 投票する
5 に答える
2635 参照

wpf - WPF / TouchアプリでMenuDropAlignmentを無視するポップアップを取得することは可能ですか?

少し背景として-WindowsにはTouch/TabletPCの機能があり、「利き手」に応じてポップアップ/メニューの位置をシフトします(メニューが手の下に表示されないようにするため)。

基本的に、これが行うのは、「右利き」(タッチデバイスを接続するとデフォルトになるようです)に設定されている場合、開くすべてのポップアップが人為的に左に蹴られます。これにより、レイアウトの問題が発生します。そして、ポップアップを「ポップアップ元」のアイテムと並べます。

タブレットPCの設定が左利きに設定されています-Windowsからの人為的な修正はありません タブレットPCの設定が左利きに設定されています-Windowsからの人為的な修正はありません

タブレットPCの設定を右利きに設定-Windowsが人為的に位置を調整します タブレットPCの設定を右利きに設定-Windowsが人為的に位置を調整します

この設定がSystemParameters.MenuDropAlignmentで設定されていることを検出できます。また、些細なポップアップの場合は、ポップアップの実際の幅を使用してこれを調整できます。ただし、動的ポップアップの場合、および右から左へのサポートをミックスに投入すると、これは正しくありません。仕事。

現在、すべてのポップアップを確認し、手動で値を計算してキックを調整し、次のようなものをすべてに追加する必要がある可能性が高くなっています。

だから..質問に戻ります:-)この設定を見ているWPFポップアップを停止する方法を知っている人はいますか?

タッチデバイスをお持ちでない場合は、次のコマンドを実行してTabletPCの設定にアクセスできます。

C:\ Windows \ explorer.exe shell ::: {80F3F1D5-FECA-45F3-BC32-752C152E456E}

そして、それがあなた自身のために作る混乱を見てください:-)

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

c# - 項目が L​​istView に追加されたときに、MultiDataTrigger の EnterActions の ColorAnimation がトリガーされない

AlternationCount が 2 に設定された ListView があります。現在 ListViewItem の背景色を交互の色に設定している ListViewItem スタイルがあり、次の場合に ColorAnimation をトリガーして赤と白の間の色をアニメーション化する 3 番目のトリガーを追加したいと考えています。バインドされた ViewModel のプロパティは true です (この場合、"Locked" と呼ばれるプロパティ)。

この投稿に出くわし、下部にある xaml を試しました。

http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/e7897cbd-71d9-45e6-9b17-0cd5bde5859f

しかし、アイテムをマウスオーバーまたは選択してから、別のアイテムを選択またはマウスオーバーするまで、アニメーションはトリガーされないように見えます。最初の 2 つの MultiDataTriggers から交互の色を取得しますが、アイテムがコレクションに追加されたときにアニメーションがトリガーされません。ここに私のXAMLがあります:

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

wpf - スタイルでツールチップを設定できません

検索したところ、ツールチップを setter.value に直接 (style.xaml ファイルで) 設定できないことがわかりました。ただし、静的リソースを使用してツールチップを設定できます。

私の質問は、ツールチップに動的テキストを提供する必要があるため、静的リソースを使用できないということです。どうすればいいですか?

これが私の例です。

使用法として、私は次のように使用できます

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

wpf - HighlightBrushKey設定がWindows7で機能しない

リソースディクショナリで次のスタイルを定義しています。

Windows XPを使用していたとき、ハイトライトと選択にグラデーションが使用されていました。今、私はWindows 7の使用に切り替えましたが、グラデーションは使用されなくなったようです。ハイライト/選択色はVSルックの水色になりました。

これが発生する理由と、WindowsXPとWindows7で同じように機能するようにこれを修正するにはどうすればよいですか(マルチプラットフォーム環境があります)

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

コメント後の完全なソリューション

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

wpf - WPFでのDataTriggerの使用

XAMLで定義されたコントロールがあり、IsReadOnlyまたはIsEnabledプロパティに基づいてTextBox異なる背景色を適用したいと思います。TextBox以下に示すように、dataTriggersを使用して実際に色を切り替えました。

また、TextBoxは次のように定義されています。

しかし、問題は、色が適切に適用されていないことです。

上記のアプローチに問題はありますか?

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

c# - MultiDataTriggerは、ConditionCollection内の条件が更新されたことをどのように知るのですか?

MultiDataTriggerに似たConditionCollectionを持つ動作を作成しようとしています。反映されたコードを調べましたが、MultiDataTriggerが、条件が満たされているかどうかを判断するためのロジックをいつ実行するかを知る方法を理解できないようです。

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

}

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

wpf - multiDataTrigger 使用時の TextBlock 例外

テキストブロックの可視性プロパティに 2 つのトリガーを追加しようとしています。次のコードは、「TextBlock 例外」を引き起こします。理由はありますか?