Wygląda na to, że natknąłem się na blokadę drogową. Używamy MVVM z Prismem i mamy widok, który wymaga płótna odręcznego. Stworzyłem StrokeCollection, który jest związany z moim ViewModel do widoku. Jestem w stanie ustawić kolekcję z mojego viewmodelu, ale zmiany nie zbliżają się do ViewModel podczas rysowania przez użytkownika. Czy istnieje sposób, aby to zadziałało?MVVM Wiązanie z InkCanvas
moją własnością w moim ViewModel jest następujący:
private StrokeCollection _strokes;
public StrokeCollection Signature
{
get
{
return _strokes;
}
set
{
_strokes = value;
OnPropertyChanged("Signature");
}
}
Tu jest mój XAML linia oprawa:
<InkCanvas x:Name="MyCanvas" Strokes="{Binding Signature, Mode=TwoWay}" />
Z jakiegoś powodu najwyraźniej InkCanvas nigdy powiadomi ViewModel jakichkolwiek zmian.
Brakowało mi sekcji INotifyCollectionChanged. Miałem wszystko inne, w tym tworzenie instancji StrokeCollection. Dzięki Kent. – cjibo
To działa ładnie. Uważam to za interesujące InkCanvas wciąż rysuje, gdy _stokes jest zerowy, nawet jeśli jest związany. – CRice