Archiwum

Archiwum / 2011 / Maj
  • Numer wersji z Mercurial revision hash

    31.05.2011

    Dzisiaj trochę kodu źródłowego z mojego ostatniego projektu. Przy okazji szlifowania projektu i tworzenia AboutWindow pomyślałem, że fajnie byłoby mieć gotowy mechanizm do szybkiego, łatwego i jednoznacznego numerowania wersji projektu i wiązania tej wersji z rewizją w systemie kontroli wersji (Mercurial). Prawidłowe podpisywanie projektu numerem wersji, który pozwala w prosty sposób zidentyfikować, z której wersji kodu (rewizji) została skompilowana dana wersja projektu jest nie do przecenienia. .NET Framework i Visual Studio udostępniają mechanizm dekorowania assembly atrybutem AssemblyVersion.

    Czytaj więcej...
  • WPF: Bindowanie Enum'a do ComboBox'a

    31.05.2011

    Podczas moich ostatnich zmagań z WPFem trafiłem na ciekawy problem. Chodzi o bindowanie typu Enum do kontrolki ComboBox. Czyli w combo ma pojawiać się lista dostępnych wartości enum'a, a po wybraniu jednej z nich ma uaktualnić się podpięta do comboboxa właściowość ViewModelu. Dodatkowo sprawa komplikuje się gdy nazwy poszczególnych wartości enum'a są niezbyt czytelne dla śmiertelnego użytkownika programu (np. zamiast ładnej opisowej nazwy "To jest pierwsza specjalna opcja programu", "To jest druga specjalna opcja programu" są wartości "Foo" i "Bar").

    Czytaj więcej...
  • Jak przez brak Intellisense w Xml napisałem własny plugin do Resharpera

    31.05.2011

    Ostatnio, podczas pracy z Unity 2.0 postanowiłem zaszaleć. Zamiast pisać klasę Bootstrapper’a i mapować implementacje na interfejsy w kodzie programu, zapragnąłem skonfigurować Unity przy pomocy pliku App.config. Dla niezorientowanych. Unity to kontener IoC od Microsoftu dostarczany razem z Enterprise Library. Proces konfiguracji Unity jest w miarę prosty. Ogranicza się do zdefiniowania aliasów, czyli skróconych nazw interfejsów, do których będą mapowane konkretne implementacje.

    Czytaj więcej...
  • Nowy blog

    31.05.2011

    Po dłuższej przerwie i niemałych perypetiach podczas próby eksportu postów z starego bloga dubrownik.posterous.com udało mi się w końcu postawić na nogi jdubrownik.com, czyli mój nowy blog. Blog wygląda jeszcze dość surowo, ale z czasem postaram się nad tym trochę popracować. Miałem ambitny plan przeniesienia starych wpisów tutaj, jednak po kilku wieczorach spędzonych na walce ze zautomatyzowaniem procesu eksportu z HTML > Markdown > BlogML dałem sobie spokój.

    Czytaj więcej...