Piotr Treska

Piotr Treska Młodszy
Administrator Baz
Danych SQL Server,
ING Services...

Temat: MVVM Przekazywanie kilku parametrów

Witam,

Mam problem z przesłaniem kilku parametrów przy wywoływaniu komendy z buttona. Wyczytałem na googlach, że w tym celu powinienem użyć MultiBindingu, Jednakże przy próbie deklaracji <Multibinding> wyskakuje błąd:
The type 'MultiBinding' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built.
Nie wiem jakich mam użyć do tego referencji, już chyba wszystkiego próbowałem. Proszę o pomoc.
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: MVVM Przekazywanie kilku parametrów

Jeśli chcesz do CommandParameter przesłać więcej parametrów niż jeden, opakuj je w jakiś obiekt i przekaż go do CommandParameter.
Piotr Treska

Piotr Treska Młodszy
Administrator Baz
Danych SQL Server,
ING Services...

Temat: MVVM Przekazywanie kilku parametrów

Ok dzięki za sugestię, spróbuje w ten sposób:)
Piotr Treska

Piotr Treska Młodszy
Administrator Baz
Danych SQL Server,
ING Services...

Temat: MVVM Przekazywanie kilku parametrów

A mógłbyś jeszcze podpowiedzieć w jaki sposób to zrobić? Bo mi coś nie wychodzi :/
Karina Wilk

Karina Wilk Programistka .Net

Temat: MVVM Przekazywanie kilku parametrów

Łukaszowi chyba chodziło o coś takiego:
  <Button CommandParameter="{Binding MyTest}" Click="btnCostam_Click">

Klasa, którą bindujesz:
  public class Klasa: INotifyPropertyChanged, INotifyPropertyChanging
{
public Test MyTest { get; set; }
//Pozostałe pola
}

Natomiast klasa Test:
 
public class Test
{
public string X { get; set; }
public string Y { get; set; }
}

A w zdarzeniu odbierasz:
 private void btnCostam_Click(object sender, RoutedEventArgs e)
{
var myTest = ((sender as Button).CommandParameter) as Test;
}
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: MVVM Przekazywanie kilku parametrów

Mniej wiecej wlasnie w ten deseń, z tym, ze uzylbym podejscia mvvm i commandingu zamiast eventow kontrolek
Piotr Treska

Piotr Treska Młodszy
Administrator Baz
Danych SQL Server,
ING Services...

Temat: MVVM Przekazywanie kilku parametrów

Tak, tak to musi być w 100% podejściem MVVM. Zrobiłem to tak jak Łukasz zaproponował, w końcu udało mi się to ogarnąć. Teraz utknąłem na przekazywaniu danych pomiędzy stronami. Przerażające są te materiały o MVVM w necie, milion propozycji rozwiązań, każda inna. Gubię się już w tym:P Znacie jakąś solidną stronę o MVVM?
Łukasz Szumyło

Łukasz Szumyło Xamarin Developer

Temat: MVVM Przekazywanie kilku parametrów

No niestety, z MVVM'em tak jak ze SCRUM'em. W każdej firmie gdzie to używają wygląda inaczej.

Do przekazywania parametrów pomiędzy widokami/kontrolkami posłuż się wzorcami:
- Event Aggregator
- Mediator

Ten pierwszy wspierany jest przez Prism, ale też nie jest trudny do ogarnięcia.



Wyślij zaproszenie do