2017-05-02 16 views
0

ボタンを押すだけで、リストビューの選択モードを1つから複数に、またはその逆に変更する方法があるのだろうかと思っていました。 ListView選択モードにバインドしようとしましたが、これは機能しません。たぶん私は何か間違ったことをしています。私のクリックボタンのコード上でUWP ListView change動的に選択モード

<ListView SelectionMode="{x:Bind SelectionMode}"/> 

if (MultipleSelectionModeEnabled) 
{ 
    SelectionMode = ListViewSelectionMode.Multiple; 
} 
else 
{ 
    SelectionMode = ListViewSelectionMode.Single; 
} 

答えて

2

x:Bindはコンパイル時バインディングです。つまり、すべてのコンパイルがレンダリングの前に完了しています。したがって、変更を強制する場合は、プロパティが更新された後にBindings.Update()に電話する必要があります。

Accepted Answerのこちらの説明をご覧ください。

だから、この

if (MultipleSelectionModeEnabled) 
{ 
    SelectionMode = ListViewSelectionMode.Multiple; 
} 
else 
{ 
    SelectionMode = ListViewSelectionMode.Single; 
} 
Bindings.Update(); 

幸運のようにコードを変更します。

4

あなたは、右のすべて(私はコード全体を見ていないのでわかりません)、x:Bind式にMode=OneWayを追加することに役立つはずを行う場合は、 x:BindのデフォルトモードはOneTimeです。

<ListView SelectionMode="{x:Bind SelectionMode, Mode=OneWay}"/> 
関連する問題