Ist es genug, um Satz Bindungsmodus in Itemssource?
-
30-09-2019 - |
Frage
Ist das redundant (Mode=OneTime
in jedem TextBlock
)?
<ListBox ItemsSource="{Binding Path=SearchResultsItems, Mode=OneTime}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Path=Price, Mode=OneTime}" />
<TextBlock Text="{Binding Path=Description, Mode=OneTime}" />
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Lösung
Das glaube ich nicht so. Einstellen ItemsSource
auf OneTime betrifft die Sammlung von Posten, nicht die Elemente selbst. ItemsSource
= OneTime wirklich bedeutet "wenn das Element Sammlung Änderung nach der Initialisierung, wird nicht aktualisiert, meine List-Box".
Andere Tipps
Das glaube ich nicht so.
Wenn auf die die Bindung Itemssource ist Modus OneTime Sie keine Eigenschaftsänderung erhalten sollen, wenn Sie die Liste ändern (hinzufügen oder entfernen Artikel), aber Sie werden immer noch Eigenschaftsänderungen von den Eigenschaften der Listenelemente erhalten.
Also, wenn Sie nicht auf Ihre Artikel Anzeige Preis oder die Beschreibung Änderungen wollen, sollten Sie halten Mode = OneTime auf die Textblöcke.