ホームページ > バックエンド開発 > C++ > WPF でボタンの可視性をブール型 ViewModel プロパティにバインドする方法は?

WPF でボタンの可視性をブール型 ViewModel プロパティにバインドする方法は?

Linda Hamilton
リリース: 2025-01-13 11:31:42
オリジナル
260 人が閲覧しました

How to Bind Button Visibility to a Boolean ViewModel Property in WPF?

ボタンの可視性を WPF の Boolean ViewModel プロパティにバインドします

MVVM (Model-View-ViewModel) 開発では、ボタンの可視性を ViewModel に格納されているブール値にバインドする必要がある場合があります。この単純なタスクには、XAML コーディングとコンバーターの使用が必要です。

XAML コード例 (ボタンがすでに存在すると仮定します):

<code class="language-xml"><Button Content="高级功能"  /></code>
ログイン後にコピー

この例では、AdvancedFormat は ViewModel のブール型プロパティです。ただし、WPF はブール値を Visibility プロパティに直接バインドできません。このギャップを埋めるには、BooleanToVisibilityConverter が必要です。

リソース内でコンバータを宣言します:

<code class="language-xml"><Window.Resources>
    <BooleanToVisibilityConverter x:Key="BoolToVis" />
</Window.Resources></code>
ログイン後にコピー

ボタン宣言にコンバーターを適用します:

既存の可視性バインディングを次のものに置き換えます:

<code class="language-xml"><Button Content="高级功能" Visibility="{Binding Path=AdvancedFormat, Converter={StaticResource BoolToVis}}" /></code>
ログイン後にコピー

Converter={StaticResource BoolToVis} 行を追加することで、BooleanToVisibilityConverter を使用してブール プロパティ AdvancedFormat を Visibility 値に変換するようにバインディングに指示します。コンバーターは、プロパティが true の場合は Visible を返し、false の場合は Collapsed を返します。これにより、ViewModel のプロパティに基づいてボタンの表示/非表示を制御できるようになります。

このパターンは、ビュー (ボタンの可視性) とモデル (ブール値のプロパティ) の関心事を分離し、ビューがモデルの状態に基づいて可視性を決定する責任を負うことを保証します。

以上がWPF でボタンの可視性をブール型 ViewModel プロパティにバインドする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート