Menu / szukaj

Przydatne konwertery

Konwertery – krótkie klasy i jednocześnie bardzo przydatne elementy, bez których bindowanie niektórych wartości w XAMLu byłoby bardzo kłopotliwe. Mają one zastosowanie w projektach typu Winodws Phone, Silverlight oraz WPF. Praktycznie w większości tego typu projektów mnożna od razu przekleić te najważniejsze. Dla mnie są to:

  • string / Uri -> BitmapImage
  • bool -> Visibility
  • Color -> SolidColorBrush
  • String + StringFormat

W dalszej części wiadomości znajdziecie ich implementację… Czytaj dalej

StringFormat, XAML i Windows Phone

Codzienne praca z platformą Windows Phone przynosi bardzo wiele niemiłych niespodzianek. Bardzo często można spotkać się z sytuacją, że wiele rzeczy jest przemilczanych w dokumentacji i programista musi sam odkrywać jak coś działa.

Aktualizacja Mango dla Windows Phone wprowadziła nową wersję Silverlight na platformę. Ulepszenie to dodało możliwość wykorzystania StringFormat w dowiązaniach danych w pliku XAML. Użycie tej dodatkowej opcji jest bardzo proste:

<TextBox Text="{Binding Path=Value, StringFormat=Currency: {0:c}}"/>

Po wykonaniu tej linijki powinniśmy zobaczyć liczbę sformatowaną jako waluta. Wynik jaki można zaobserwować po uruchomieniu tego kodu nie do końca odpowiada temu czego się spodziewaliśmy. Owszem nasza liczba sformatowana jest jako waluta, ale nazwa waluty i format liczby jest niewrażliwy na zmianę ustawień regionalnych systemu. Czytaj dalej

Hybrydowa aplikacja WPF z parametrami

Hmmmmm…… Co to jest hybrydowa aplikacja WPF? Próbowałem znaleźć jakieś inne określenie na ten problem, ale niestety to wydaje się najtrafniejsze. Pojęciem aplikacja hybrydowa WPF będę nazywał aplikację, które działa i prezentuje wyniki działania w konsoli, jak również we własnym oknie. Dodatkowo aplikacja powinna wspierać przekazywanie parametrów w trakcie startu. Czytaj dalej

Zaginiona metoda Main()?

Tworząc aplikację WPF czasami zachodzi potrzeba napisania własnej metody Main(). Przeglądając pliki znajdujące się w solucji można natknąć się pliki *.xaml i powiązanie z nimi *.xaml.cs oraz pliki kodu *.cs. Dopóki nie trzeba zrobić czegoś nie standardowego to często nie ma potrzeby, aby zagłębiać się w różnego rodzaju mechanizmy. Takim mechanizmem może być start aplikacji WPF.

Ostatnio potrzebowałem dodać własną metodę Main(). Sądziłem, że będzie to proste – nowa klasa i odpowiedni kod. Oczywiście wcześniej sprawdziłem, czy nie ma tej metody już zdefiniowanej w plikach solucji. Czytaj dalej