問題タブ [isenabled]
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.
wpf - 無効にしたときに何も選択されていないことを示すWPFComboBox(IsEnabled == false)
falseに設定さComboBox
れている場合、何も選択されていないかのようにWPFを空白で表示するさまざまな方法を考えています。IsEnabled
いつものように、私はこれを実行しようとしていますが、コントロールテンプレート全体を再定義する必要はありません。ComboBox
これは、常にWPFで苦労しています。コントロールテンプレート全体を再定義するよりもエレガントなソリューションがあればComboBox
、私に知らせてください。
私がやろうとしている理由はCheckBox
、「すべて」オプションを表すがあり、チェックするとComboBox
、単一の個別のアイテムのみを選択するために使用されるを無効にするためです。myCheckBox
をチェックするとComboBox
、UIのその状態ではその値が意味を持たないため、値が残っていることをユーザーが混乱させることがあります。
もう1つの要件は、ユーザーが「すべて」のチェックを外した場合に、以前に選択したアイテムを保持したいので、ソリューションがSelectedValue
、、、SelectedIndex
またはSelectedItem
の値を変更できないことです。ComboBox
CheckBox
HCLの回答に基づく解決策:
c# - SelectedItem に基づいて ComboBox の IsEnabled プロパティを設定する
別の ComboBox で項目が選択されているかどうかに基づいて、ComboBox を有効/無効にしたいと考えています。スタイルにトリガーを設定することで機能させることができましたが、それはコンボボックスのカスタム グローバル スタイルをオーバーライドします。私のスタイルを失うことなく同じ機能を得る別の方法はありますか?
c# - ValueConverter を使用した WPF グリッド IsEnabled
Grid と TreeView を持つ WPF ウィンドウがあります。グリッドのデータ コンテキストは、ツリー ビューで選択された項目にバインドされます。ただし、すべての treeviewitem が適用できるわけではないため、treviewitem が適用できない場合はグリッドを無効にしたいと考えています。そこで、null チェックを行って bool を返す値コンバーターを作成しました。(この場合、該当する項目は null にはなりません)
問題は、値コンバーターが使用されないことです。ブレークポイントを設定しましたが、ヒットすることはありません。私が使用している他の値コンバーターがあり、それらはすべて正常に機能します。
足りないものはありますか?
この質問にとって重要というわけではありませんが、ValueConverter コードは次のとおりです。
wpf - WPF DatePickerTextBox - IsEnabled == false の場合にフォントの色/不透明度を変更する
タイトルで指定された問題から抜け出すのに苦労しています。ここで誰かがそれをしましたか?
コントロールが無効になっている場合、DatePicker
のフォントDatePickerTextBox
は灰色で読みにくくなります。それを変えるために私は変わります。
よろしく、フレドリック。
wpf - いたずらなボタンスタイルの誤動作
これらの2つのボタン。1つは有効になり、スタイルを持つものは無効になります。誰かがその理由を理解できますか?
wpf - datatriggerにより、ボタンの位置がずれます
このスタイルをボタンから削除すると、正しく表示されます。そうしないと、行にある他のすべてのボタンが約5ピクセル下に押されます。
c# - カスタムUserControl「IsEnabled」データバインディングが機能しない
現在、WPFアプリケーションにちょっとひどい問題があります...
コンポーネントの詳細を編集するために使用されるカスタムUserControlがあります。有効にしないことから始めて、ユーザーが編集するコンポーネントを選択するとすぐに有効になるはずです。
問題は、IsEnabledプロパティが変更されないことです。
これが私のコードです:
EditorEnabledは私のViewModel(VmComponent)のプロパティであり、デフォルトではfalseであり、ユーザーがコンポーネントを選択または作成するとtrueになります。
念のために言っておきますが、私のViewModelでは次のようになっています。
アプリを起動しようとすると、UserControlが起動しています...有効になっています。どこにでもブレークポイントを追加しましたが、EditorEnabledは最初からfalseです。
また、何が起こっているのかを理解するために、ひどくばかげたことをしました。コンバーターを作成し(非常に便利で、ブール値をブール値に変換します)、ブレークポイントを設定しました。コードに到達することはありません。
これはおそらく、コンバーターに到達することがないため、プロパティisEnabledが設定されないことを意味します。
そこに何か問題がありますか?私は約1週間前にWPFで作業を開始したため、重要な何かを見逃した可能性があります...
どうもありがとうございました:-)
wpf - Button IsEnabled を StackPanel にバインドすると子が発生する
Button isEnabled を StackPanel Children (子供を持つ) にバインドできるかどうか疑問に思っています。スタックパネルに子がある場合、ボタンは有効になり、子ボタンは無効になりません。現在、これをコードで処理しているだけですが、これをバインドできるかどうか疑問に思い始めました。ご意見ありがとうございます...
android - Androidでボタンが有効になっているかどうかを確認するにはどうすればよいですか?
Android では、次のようにしてボタンを有効または無効に設定できます。
button.setEnabled(true);
またbutton.setEnabled(false);
ボタンの有効状態が true か false かを確認するにはどうすればよいですか?
wpf - IsEnabled = false で希望どおりに動作しない textBox のカスタム テンプレート
私の問題はこれに少し似ています: TextBox コントロール テンプレートに問題がある
しかし、私はもう少し行きたいと思います:
私の問題は単純です: テンプレート化されたコントロール (ラベル、テキストボックス、チェックボックスなど) があります。各コントロールには、コントロール インスタンスのプロパティ値を設定することにより、実行時にすべてオーバーライドできるデフォルト値があります。また、プロパティに設定された値に関係なく、IsEnabled = false の場合に使用することにした値が優先されます。
今、私は、WPF の値の優先順位がこの動作の簡単な実装を妨げていることを知っています (別の質問で学んだように: http://msdn.microsoft.com/en-us/library/ms743230.aspx )
しかし、TextBox の Foreground プロパティを除いて、うまく機能する回避策を見つけることができました。(そしてこの特定のケースのみ)
したがって、フォアグラウンド値を処理するだけで、Label で行うことは次のとおりです: (より明確にするために、他のすべてのプロパティを削除しました)
したがって、基本的に、デフォルトでは、Label には青色のテキストがあり、myLabel.Foreground = Brushes.Green
コード ビハインドで: を実行することで、たとえば緑色でオーバーライドできます。次に、何を設定しても、: と書くMyLabel.IsEnabled = False
と、テキストは赤色になります。
そして、このテクニックはうまく機能します。(つまり、xaml のこの行は赤いテキストを出力します: <Label Foreground="Green" IsEnabled="False" />
)。他のすべてのコントロールと同じように機能します。
しかし、これをテキストボックスで再現しようとすると、まったく機能しません。
ここに私のコードがあります:
Foreground="{TemplateBinding Foreground}"
PART_ContentHostを追加しようとしましたが、成功しませんでした。
これは、PART_ContentHost がスクロールビューアーであり、何らかの非表示の (少なくとも私からは) 継承が行われているという事実と関係があると思われます。
私が見つけることができる他の唯一の説明は、TextBox クラスには、コントロール自体とその PART_ContentHost 部分 (バインディングまたは propertychanged イベントまたは何か他のもの?) の間のリンクをハードコーディングする特別な処理があるということです。
誰かが私にこれを説明できれば、これは素晴らしいことです! 誰かが素晴らしい解決策(私が現在使用しているもののような厄介なハックを含まないが、読者に重大な目の怪我を引き起こさないようにここには示さないもの)さえ提供できれば、これはさらに素晴らしいでしょう. !