Od ostatniej części tutoriala WPF, poświęconej tworzeniu prostego kalkulatora minęło już kilka tygodni, więc czas najwyższy na nową część. Dziś zajmiemy się zagadnieniem niezwykle ważnym z punktu widzenia wykorzystania własnych danych w połączeniu z interfejsem graficznym. Mowa oczywiście o bindowaniu, czyli wiązaniu danych wyświetlanych w kontrolkach, a pochodzących np. z naszych własnych obiektów, właściwości, bazy danych etc.
Artykuł dla osób, które dopiero zaczynają z testami jednostkowymi. Wprowadzenie, trochę teorii i best practises: http://msdn.microsoft.com/pl-pl/library/testy-jednostkowe-w-visual-studio
Ostatnim razem rozpisałem się na temat serializacji WSZYSTKIEGO, nawet interfejsów, do JSONa i możliwością ich deserializacji do odpowiednich klas. Bardzo szybko pojawił się jednak problem: przedstawiony przeze mnie sposób wypluwa z siebie informacje nie tylko o źródłowym typie, ale także o dllce z której ów typ pochodzi. W wielu przypadkach może być to działanie pożądane, jednak u mnie kluczowym aspektem całej sprawy była "przenaszalność" zserializowanych akcji pomiędzy wersjami oprogramowania.
Witajcie! zapraszamy Was na siódmy odcinek codingtv(); Dzisiaj przygotujemy serwis Blog – metody potrzebne do pobierania i zapisywania Bloga. Pokażemy również, jak tworzyć mocki z wykorzystaniem biblioteki Moq. Zgodnie z Waszymi uwagami zmieniamy również trochę strukturę katalogów w projekcie. Zapraszamy do oglądania i czekamy na Wasze komentarze!
Z GridView jest taki kłopot, że w przeciwieństwie do ListView nie implementuje IPageableItemContainer - oznacza to, że nie można bezpośrednio podczepić pod niego DataPagera. DataPager został dodany do frameworka w wersji 3.5 i dostarcza funkcjonalności page’owania (stronicowania?, raczej paginacji). Czyli mamy rozdział i można go umieścić albo gdzieś w hierarchii kontrolek kontrolki data-bound np.: … albo całkiem na zewnątrz. Przed przejściem do implementacji interfejsu dla GridView chciałem zaznaczyć, ż...
autor: Musiałem ostatnio serializować (no i oczywiście deserializować) kolekcje obiektów z hierarchii wyglądające na przykład tak: ... Pierwszym kierunkiem był XML, jednak (zgodnie z oczekiwaniami zresztą) umożliwienie serializacji czegoś takiego do XMLa wiązałoby się z wieloma nieprzyjemnościami. A to nie można serializować interfejsów więc konieczne by było dodawanie jakiejś klasy abstrakcyjnej, a to trzeba stosować przebrzydłe atrybuty Xmlinclude żeby umożliwić deserializację... a dodatkowo korzystani...
W ramach mojego przygotowania do egzaminu 70-511 (Windows Applications Development with Microsoft .NET Framework 4) oraz uczestnictwa w „StudyGroup” organizowanym przez Łódzką Grupę Profesionalistów IT & .NET opracowałem zagadnienia związane z tematem określonym w training kicie jako „Enhancing Usability”. Z moimi czytelnikami chciałbym podzielić się moimi opracowaniami. W tym wpisie będzie o jednoczesnym wykorzystaniu i integracji Windows Forms i WPF w jednej aplikacji. Zacznijmy może od stwierdzeni...
Może wydarzyć się sytuacja, że zajdzie konieczność utworzenia unikalnego klucza na kolumnie typu tekstowego (CHAR lub VARCHAR). W tym momencie warto nadmienić, iż każdy znak zajmie wtedy 1 bajt. Jeśli zaś będzie to typ danych unicode (NCHAR lub NVARCHAR), to znak zapisany będzie na 2 bajtach pamięci. Dlaczego o tym wspominam? Ponieważ jeśli wielkość indeksu przekroczy magiczną granicę 900 bajtów pojawia się Error 1946...
Bazy danych i XML 4364 dni, 1 godzinę, 35 minut temu 90 źrodło rozwiń
Autor: Jakiś czas temu Tomek Wiśniewski na swoim blogu opisał (Debugger Canvas – nowe spojrzenie na ”odrobaczanie”) ciekawy dodatek do Visual Studio a mianowicie Debugger Canvas. Ponieważ lubię wszelkie rzeczy związane z “ odrobaczaniem” postanowiłem się trochę przyjrzeć mu bliżej. W tym wpisie chciałbym pokazać trochę dodatkowych “smaczków”, które są udostępnione za pomocą Debugger Canvas. Tak więc co dodatkowego posiada Debugger Canvas prócz tego co opisał Tomek? Na każdym z “bąbli” (wolę to określeni...
Jeśli jesteś za serwerem proxy to możliwe, że Twój Visual Studio 2010 Extension Manager nie może się połączyć z Online Gallery. Nie można się połączyć z Online Gallery Ten problem można prosto rozwiązać. Na bloguMe So Sorry znajduje się opis rozwiązania (wielkie dzięki Andrzej!). Autor podaje, że wystarczy poddać edycji plik konfiguracji Visual Studio (\Program Files (x86)\M...
Część bywalców kanału #warsztat może wiedzieć, że od jakiegoś czasu w wolnych chwilach rozwijam pewien niewielki projekt. Jest to prosty IRC-owy bot, który potrafi wykonywać różne predefiniowane czynności, dostępne za pomocą komend rozpoczynających się od kropki. Wśród nich mamy między innymi wysyłanie zapytań do wyszukiwarki Google, wyświetlanie skrótów artykułów z Wikipedii, przekazywanie wia...
Jeżeli kiedykolwiek natkniecie się na problem: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS...
Większość dzisiejszych aplikacji typu desktop posiada bufor stanu – popularnie nazywany “undo\redo” (skróty CTRL+Z, CTRL+Y). Najpopularniejszym zastosowaniem są edytory tekstu. Pisząc aplikację w C# z wykorzystaniem standardowym kontrolek TextBox taką funkcjonalność już będziemy mieli. Jednak czasami zachodzi rozwinięcie standardowej funkcjonalności o elementy specyficzne dla danej aplikacji. Najczęściej występuje to w różnego rodzaju edytorach (np. edytory map). W dzisiejszym poście przyjrzymy się imple...
Standardowo jeśli chcemy przekazać w URLu tablicę w MVC to wysyłamy po prostu wiele wartości o tej samej nazwie, np ?array=1&array=2&array=3. Może się jednak zdarzyć, że przydałoby się to jakoś "skompaktować", na przykład do takiej postaci: ?array=1,2,3. Co wtedy?
Ile raz wam się zdarza czyścić projekt z bin/obj/logs itp. itd.? Mi osobiście dość często. Miałem już dość wykonywania monotonnych czynności otwarcia folderu solution i robienia dwóch search: po bin i obj...
Witajcie! po dłuższej przerwie zapraszamy Was na szósty odcinek codingtv(); Dzisiaj staramy się naprawić to co popsuliśmy w poprzednim odcinku – czyli testy do repozytorium Blog.
Możliwości kształtowania wyglądu naszych klas dla łatwiejszego debuggowania są bardzo duże. Poprzednio pokazałem jak można wpływać na to, co nam wyświetli debugger o naszej klasie (DebuggerDisplay) oraz jak można tworzyć własne wizualizery klas (Debugger Visualizers). Teraz czas na ukrywanie składowych (np. prywatnych) naszej klasy, aby nie zaśmiecać sobie podglądu stanu okiektu podczas ...
Nie tak dawno przedstawiłem na spotkaniu Łódzkiej grupy profesjonalistów IT & .NET prezentację poświęconą „Managed Extensibility Framework” (patrz informacja: Prezentacja: "Wprowadzenie do Managed Extensibility Framework w .NET 4.0"). Tych, którzy chcieliby się zapoznać z prezentacją lub kodem źródłowym, który powstał podczas prezentacji, zapraszam do obejrzenia mojej prezentacji umieszczonej na portalu SlideShare
Debuggowanie aplikacji nie jest procesem łatwym ani szybkim. Visual Studio już od dawna przoduje w tej kwestii, ale nadal istnieje szerokie pole do popisu w tej dziedzinie, a przykładem tego jest tytułowy dodatek Debugger Canvas Czym jest Debugger Canvas? Jest dodatkiem do Visual Studio Ultimate, który całkowicie zmienia sposób w jaki walczy się z błędami w kodzie. Postawienie breakpointa nie powoduje już zatrzymania się kodu w danym pliku i otwarcia go na nowej zakładce w VS, ale uruchomienie specjalne...
Aplikacja, którą tworzę, w pewnych cyrkumstancjach wymaga odblokowanych popupów. Postępowanie nasuwa się samo - trzeba wykryć czy popupy są odblokowane i pokazać jakieś ostrzeżenie, jeśli nie są. Myślałem, że będzie to kwadrans roboty... No i faktycznie byłby to kwadrans, jeśli nie odpaliłbym więcej niż jednej przeglądarki. Jak to w świecie webdev bywa, to samo raz działa tak, a raz srak, w zależności od tego co jest naszym oknem na świat.