Pytanie dot. #mvvm #csharp

Implementując mvvm tworzę w XAML datacontect dla kontrolki:

używając x:Name tworzę instancję EventsViewModel evm, która jest dostępna w MainWindow.
Moje pytanie czy przypisanie tej instancji do jakiegoś viewmodelu, który będzie obsługiwał polecenie przez przypisanie go w code behind w klasie MainWindow jest zgodne z MVVM? Czy jest jakiś inny, schludniejszy sposób?
Program do obsługi kont bankowych w C# zgodnie z instrukcją (bazując na szablonie, który wykonałem). Potrzebuję najlepiej na zaraz, ale jutro do 14:00 też może być ( ͡° ͜ʖ ͡°). Co do budżetu to ekwiwalent 3 flaszek.
  • Odpowiedz
@ihwar: czyli w sumie postulujesz wprowadzenie dynamic z restrykcjami. Trochę się to kłóci wg mnie z ideą dynamic, ale skoro ułatwiłoby kod to czemu nie :)
  • Odpowiedz
Mirki z #wpf #csharp

Dodaję do ComboBox w #xaml pozycję przez Var a potem podczas ładowania danych przez comboBox.Items.Add.
Następnie w zdarzeniu SelectionChanged:
string filterText = ((sender as ComboBox).SelectedItem as string);

i właśnie SelectedItem dla dodanego "Var" ma wartość obiektu ComboBoxItem a dla wartości dodanych przez comboBox.Items.Add to zwykły string.
@ziolo86: A, czyli chcesz mieć stringi przy obsłudze SelectedItem.
W tym wypadku, szczerze mówiąc to nie wiem jak zrobić żeby hardcodowane elementy nie były ComboBoxItem.
Wiem że jak zrobisz tak jak napisałem wyżej + w SelectionChanged weźmiesz
var cbi = combobox.SelectedItem as ComboBoxItem;
var stringValue = cbi.Content as string;
To otrzymasz stringi dla każdego przypadku.

Jeszcze jedna uwaga - operator są może zwrócić null, więc ten kod nie jest w pełni
  • Odpowiedz
@ziolo86: :(. Poczytaj o MVVM, nie powinieneś praktycznie nigdy w ten sposób ładować danych do combobox. WPF ma bardzo dobre wsparcie dla bindingów, naucz się z nich korzystać, a zapomnisz raz na zawsze o ręcznym dodawaniu czegokolwiek do comboboxa.
Co do zasady* - kod, w którym odwołujesz się do kontrolki w WPF jest złym kodem.

  • Odpowiedz
Chciałbym prosić was o radę, nastał u mnie czas wyboru tematu pracy inż., w sumie to już wybrałem, jest nim Przeglądarkowa gra strategiczna czasu rzeczywistego. Prowadzący zaproponował mi, że mogę robić nawet coś w stylu travian'a, wtedy nie byłoby pytania, napisałbym wszystko przy pomocy MVC i .net podpinając gdzieniegdzie jakieś elementy w JS typu mapki itp.
Ale plany mam ambitniejsze, chciałbym stworzyć coś dynamiczniejszego. Sam pomysł nie jest na tyle ważny co
@kicha93: BTW - piękna laurka dla polskich uczelni, student ma zerowe pojęcie o temacie swojej pracy inżynierskiej czy czegokolwiek.

A więc tak - serwer piszesz własny w C#. Powinien być asynchroniczny i spokojnie obsłużyć 200 zapytań na sekundę.

Klienta piszesz w C#, lub języku LLVM, korzystasz z jakiegoś cross kompilatora do JavaScriptu, gotowe.
  • Odpowiedz
#problemycsharp #programowanie #csharp

cz1

W skrócie: robie projekt przejazdu kolejowego. Obecnie jestem na etapie rozwiązywania problemu z najeżdzającymi na siebie samochodami.

To znowu ja. @everowy w nocy zapodał mi bardzo ciekawy pomysł. A mianowicie użycie ParameterizedThreadStart tylko jak używam tego ja to wywala błąd "Odwołanie do obiektu nie zostało ustawione na wystąpienie obiektu."

tutaj linijki tutorila i moje.

Jak zrobie tak jak jest w przykładnie - z tablicą tworzy się od razu
  • Odpowiedz
#programowanie #csharp

Mam pewien problem. ( ͡° ʖ̯ ͡°) - znowu

Robie aplikacje na watkach ma ona symulować przejazd kolejowy. Mam sobie zrobiona funkcje na pociąg on jeździ w kolko jeśli pojawia sie w pewnym miejscu rogatka zostaje zamknięta.

Mam również klasę odpowiadającą za samochody. Można utworzyć dowolną liczbę samochodów które jeżdżą z góry albo z dołu. Samochody zapisują się do listy.

A teraz problem. Jak sprawić żeby
Jak w #csharp zrobić coś takiego, że program czeka na naciśnięcie buttona, podczas oczekiwania wszystko jest idle. Na stacku znalzełem coś o Task factory, ale co to jest to ja nie. ( ͡°( ͡° ͜ʖ( ͡° ͜ʖ ͡°)ʖ ͡°) ͡°)
Moja samodzielna próba to prawie #itgraduate ( ͡º ͜ʖ͡º)

......
while (true)
{
Mireczki, potrzebuję wskazówki.
Zaznaczam, że to mój pierwszy projekt w ASP MVC, więc nie do końca mogę wszystko ogarniać.

Mam sytuację wyglądającą w ten sposób: dla zalogowanego użytkownika pobieram z bazy listę przedmiotów. Tę listę potrzebuję wrzucić do dropdownlist/comboboxa. Po wybraniu nowej wartości (będącej Id wybranego przedmiotu) wykona się jakaś akcja korzystająca z tego Id (konkretnie to zainicjowanie danymi innej części tego widoku).

Jakieś wskazówki jak się do tego zabrać?
#csharp
Dobra, piszę tutaj bo już mnie #!$%@? bierze i nie wiem jak to rozwiązać, otóż kod wywala mi taki oto błąd:

NullReferenceException: Object reference not set to an instance of an object
Targeting+c__Iterator10.MoveNext () (at Assets/Scripts/Targeting.cs:79)

Problem w tym, że wspomniana 79. linia kodu wygląda następująco:

else if (!CheckMode(item.groundTarget)) // targeting mode doesn't match
a obiekt item nie jest nullem

Google niestety nie pomogło, #pomuszta bo wychodzę z siebie. Wrzucam tutaj kod
@blisher: iterator.MoveNext wskazuje na to, że błąd jest albo w foreach() albo w Coroutine, z takich popularniejszych rzeczy korzystających z iteratorów. masz coś z tych dwóch w CheckMode()? Czym jest SeekingForTarget?
  • Odpowiedz
Piszę aplikację desktopową w technologii #wpf, w #csharp . Korzystam z #entityframework . Chciałbym, żeby była napisana jak najporządniej, ponieważ będzie się rozrastać. Często będą tam prezentowane dane. Chciałbym, żeby było to zgodne z MVVM . I tutaj nie rozumiem do końca, w której warstwie jest ten mój Entity Framework. Stworzone mam klasy obiektów odpowiadających w bazie, ten diagram. Czy powinienem tworzyć jeszcze dodatkowe widoki z tego? Obudować to jeszcze kodem,
@johanneskate1: W takim razie ok - ma to sens. Generalnie każda operacja powinna mieć zdefiniowany własny obiekt DTO (data-transfer object)/ViewModel, nie zwracaj obiektów encji do widoków. Powód: chociażby dlatego, że będziesz zaciągał wszystkie (nawet te nie potrzebne dane), dodatkowo na pewno wystąpia problemy z lazy-loadingiem (np. widok może odwołać się do pola, w ktorym jest lazy-load, a ty nawet o tym nie będziesz wiedział). Ponadto raczej na pewno wystąpia kolejne problemy
  • Odpowiedz
Mam do napisania na jutro projekt. "Rozkład zajęć - co, gdzie, z kim, o której". Język wybrałem sobie C# i do tego muszę wykorzystać bazę danych którąś z tych: Microsoft SQL Serwer, ORACLE, MySQL, PostgreSQL, InterBase.

Za dużo czasu nie mam (a nigdy z bazami nic w c# nie robiłem), wiec pytanie do specy #csharp z #programowanie jaką bazę na szybko i ładnie można połączyć z C#. Można to jakoś w Visual
@rotflol: Najlepiej MsSQL. Używając LinqToSQL masz z automatu zrobione ORM czyli mapowanie obiektowo relacyjne i uzywasz bazy danych jak zwyklej klasy.
  • Odpowiedz