1

私は小さなWPFアプリケーション(.Net 3.5 :/)を持っています。

このアプリケーションにはリストボックスがあり、アプリケーションの右側で編集する要素を選択できます。

右側の部分が無効な場合、ユーザーが要素の選択を変更できないようにする必要があります。

私はこれについて多くの検索を行いました:背景/ブラシを変更して、選択が不可能であるように見せるように言っている人もいました(ただし、選択はまだ可能です)

他の人は、サブ要素の IsFocusable プロパティを更新するように私に言っていました:

<ListBox itemsSoutces={Binding Test}>
    <ListBoxt.ItemContainerStyle>
        <Style TargetType="{x:Type ListBoxItem}">
            <Setter Property="Focusable" Value="False"/>
        </Style>
    </listBox.ItemContainerStyle>
</ListBox>

このソリューションの問題は、この値が ViewModel の値から取得される必要があり、Style Setter の Value を ViewModel のプロパティにバインドする方法がわからない (またはできない) ことです。

出来ますか?どのように?

4

1 に答える 1

1

IsEnabledfalseに設定して右側の部分が無効な場合は、リストボックスを無効にします。ViewModelに対応するプロパティが含まれている場合は、それにバインドできます。

<ListBox IsEnabled="{Binding IsValid}" ...> ... </ListBox>
于 2012-11-28T14:38:13.433 に答える