Archiwum dla sierpień 2007
FileBrowser – przeglądanie plików
Od dłuższego czasu używam kontrolki DocumentList jest ona szybka i łatwa w użyciu, jednak posiada ograniczenie którego w żaden sposób nie jestem w stanie zrozumieć. Otóż traktuje ona folder ‘My Documents‘ jako katalog root, co powoduje, że możemy nawigować jedynie po jego zwartości. Nie przejrzymy sobie zawartości katalogu Windows za pomocą tej kontrolki. Od biedy jestem wstanie zrozumieć ograniczenie dotyczące katalogu systemowego, jednak jak ktoś uniemożliwia mi nawigowanie do np. folderu reprezentującego kartę SD – jest już źle. Dlatego też byłem zmuszony stworzyć własną kontrolkę:

Komponent dysponuje specyficznymi właściwościami jak: SelectedFile, SelectedPath, FileFilter i event‘ami SelectedFileChanged, CurrentPathChanged co jest chyba wszystkim co może być przydatne. W przypadku jakiś błędów ew. możliwych usprawnień dajcie mi znać.
Kod źródłowy: FileBrowser.zip
LINQ a SQL Server Compact Edition
Tak się zastanawiałem jak (i ew. czy) LINQ będzie współpracowało z SQL Server 2005 Compact Edition. I okazuje się, że będzie! Fakt, nieco ograniczone tu i tam ale pracować będzie. Jak poskładać wszystko do kupy, można znaleźć w tym poście: ‘LINQ with SQL Server Compact (a.k.a. DLINQ with SQL CE)‘. Teraz tylko czekać na jakąś zewnętrzną bibliotekę umożliwiającą wykorzystanie ‘LINQ to SQL Server Compact‘ na .NET Compact Framework.
Ultimate Developer & Power Users Tool List 2007
Jak co roku, już od trzech lat z rzędu – Scott Hanselman – bloger nadzwyczajny, uaktualnił swoją listę Ultimate Developer & Power Users Tool List for Windows. Muszę przyznać, że rozmiar tej listy jest zdumiewający. Sam używam wielu z nich i jestem z nich zadowolony. Co ja bym dodał do tej listy? Przede wszystkim: Total Commander’a – jako najlepszego następcę Nortona Commander’a na jakiego dotychczas się natknąłem – ktoś powie, że to przyzwyczajenie. Być może jednak IMHO Eksplorator Windows’a jest do bani. Ponoć poprawiło się to razem z nadejściem Windows Vista – jednak jeszcze nie miałem dogodnej okazji aby się o tym przekonać. Sam czekam z zainstalowaniem nowego systemu na pierwszy Service Pack. Kolejnym narzędziem jest generator kodu MyGeneration. Z narzędziami CodeSmith jakoś się jeszcze nie zetknąłem – jednak wychodzę z założenia, że po co mam płacić za program, skoro drugi robiący, (mniej-więcej) to samo mogę mieć za darmo?
No to chyba najważniejsze programy, jakie rzuciły mi się w oczy, jak coś mi się jeszcze przypomni to postaram się go dopisać.
Natomiast jednym z narzędzi które wymienił Scott, a które mnie ździebko konfunduje jest PowerShell. Zastanawiałem się, próbowałem – ale jakoś nie mogę znaleźć dla niego miejsca w mojej ’skrzynce’ z narzędziami. Jak go zastosować w mojej codzienności programisty, gdzie nie będzie przerostem formy nad treścią i wymiernie ułatwi/przyśpieszy moją pracę? Jakoś nie znalazłem na to jeszcze odpowiedzi.
Kolejne – How Do I: Devices.
Kolejny screencast z serii ‘How Do I: Devices‘ – tym razem, krótko i na temat: Jak określić czy lista komponentu ComboBox jest widoczna czy nie. Sposób o tyle ciekawy, że nie wymaga zastosowania PInvoke, a bazuje na przechwytywaniu komunikatów systemowych.
Device Emulator i konsola systemowa
Debugowanie aplikacji mobilnych, szczególnie przy użyciu emulatora, do szybkich nie należy. Kiedyś już pisałem jakim sposobem możemy przyśpieszyć uruchomienie aplikacji z poziomu Visual Studio. Jednak nie poprawi to szybkości pracy z debuggerem. Osobiście strasznie mnie denerwują opóźnienia przy śledzeniu aplikacji mobilnych – dlatego też staram się tego unikać, a przebieg programu śledzę starym i wypróbowanym sposobem, czyli: Debug.WriteLine(). Może dla niektórych zabrzmi to jak hardcore ale dla mnie się sprawdza i działa zdecydowanie szybciej, a w sytuacjach podbramkowych (czytaj: w kodzie dzieje się magia) zawsze można sięgnąć po narzędzia które udostępnia nam Visual Studio.
Wiadomości wypisywane na konsolę za pomocą klasy Debug są widoczne w okienu Output – Visual Studio. Jednak jak ktoś go nie lubi, to w przypadku pracy z emulatorem może skorzystać z normalnej konsoli systemowej, wystarczy że w konfiguracji Device Emulatora zaznaczy opcje: ‘Create text console window for serial port 1‘.

Pomyślne wieści
Call Collect – aplikacja za którą jestem odpowiedzialny – pomyślnie przeszła testy i od dzisiaj oficjalnie przysługuje jej logo ‘Designed for Windows Mobile 6 Professional‘. Party wieczorem – a teraz wracamy do pracy.
Tylko dla dorosłych
SketchPath
SketchPath jest narzędziem które ułatwi nam prace z plikami XML. Interfejs jest przejrzysty i prosty w użyciu, a tworzenie wyrażeń XPath dziecinnie proste. Na pewno, funkcjonalnością, daleko mu do kombajnu jakim jest XMLSpy, jednakże jeśli korzystamy z plików XML raz na jakiś czas – jego możliwości w pełni nas zadowolą. Dodatkową zaletą jest to, że SketchPath jest rozprowadzany jako freeware.
vConvert.net
TableDiff
TableDiff jest narzędziem wchodzącym w skład SQL Server‘a i służy do porównywania dwóch tabel. Program może tylko pracować z serwerami bazodanowymi Microsoftu, a poza tym nie ma ograniczenia czy tabele są w tej samej bazie, czy nawet na tym samym serwerze. TableDiff umożliwia również na tworzenie skryptów *.sql które pomogą nam w ewentualnej synchronizacji danych. Teraz dodatkowo możemy ściągnąć proste GUI które wyeliminuje żmudne klepanie poleceń z linii komend. Więcej na ten temat można znaleźć tutaj.



