dotnetomaniak.pl

dotnetomaniak.pl - Najnowsze artykuły o .NET w dziale Windows - Strona 9

Walidacja jest to technika sprawdzająca, czy dany obiekt spełnia pewne założenia poprawności danych. W WPF-ie oraz Silverlighcie istnieją trzy sposoby walidacji obiektów: walidacja poprzez rzucanie wyjątków, walidacja z użyciem interfejsu IDataErrorInfo, walidacja z użyciem interfejsu INotifyDataErrorInfo Walidacja poprzez rzucanie wyjątków Walidacja poprzez rzucanie wyjątków odbywa się w następujący sposób. W seterze danej właściwości dodajemy warunek sprawdzający czy wpisane dane są poprawne...

Dziel się z innymi:
Walidacja w WPF oraz Silverlight ~ Premium Hands

Windows 2258 dni, 17 godzin, 31 minut temu premium-hands-net 124 rozwiń

Trigery jest to mechmizm WPF-a służący reakcji UI na jakieś zdarzenie. Wyróżniamy cztery rodzaje triggerów Property triggers - używane do zareagowanie na zmiany dependency property w danej kontrolce, Data triggers - używane do zareagowanie na zmiany w bindowanych obiektach- można podłączyć się do właściwości z DataContextu jak i z danej kontrolki, MultiDataTriggers - używane do reagowania na zmiany kilku właściwości, MultiTrigger - używane do reagowania na zmiany kilku dependecy property w danej ...

Tagi: C#, Trigery, Triggers, WPF
Dziel się z innymi:
Triggers - Trigery ~ Premium Hands

Windows 2259 dni, 12 godzin, 46 minut temu premium-hands-net 68 rozwiń

ListViewCollection (WPF) ListViewCollection jest to kolekcja wprowadzona do WPF-a, która wspiera sortowanie, grupowanie oraz filtrowanie. Kolekcję taką tworzymy w następujący sposób List

Tagi: C#, Silverlight, WPF
Dziel się z innymi:
ListViewCollection oraz PagedCollectionView ~ Premium Hands

Windows 2259 dni, 12 godzin, 46 minut temu premium-hands-net 62 rozwiń

autor: Platforma .NET, dzięki mechanizmowi refleksji, pozwala na dynamiczne wczytywanie do programu podzespołów (ang. assembly). Pozwala to w łatwy sposób pisać rozszerzane przy pomocy pluginów aplikacje i na wiele innych rzeczy. Ostatnio potrzebowałem wykorzystać ten mechanizm do własnych celów. Aby zwiększyć bezpieczeństwo, postanowiłem ładować podzespoły do odzielnych domen aplikacyjnych. W ten sposób, jeśli po załadowaniu podzespołu i wykonaniu jego kodu pojawi się błąd, główna domena aplik...

Tagi: .Net, Assembly
Dziel się z innymi:
Michał Komorowski: Wczytywanie podzespołów do domeny aplikacyjnej

Windows 2261 dni, 17 godzin, 22 minuty temu macko 111 rozwiń

Poszukując sposobów automatycznego testowania aplikacji natrafiłem na ciekawą funkcjonalność Visual Studio 2010 Ultimate. Mianowicie w tej wersji naszego ulubionego IDE znalazło się miejsce na nowy typ testów - Coded UI Test. Coded UI Test jest to automatyczny test UI, który tworzymy poprzez nagrywanie akcji jakie wykonujemy w naszej aplikacji. Nie musimy pisać ani jednej linijki kodu żeby przetestować jakąś funkcjonalność naszego programu. Jedyne co musimy zrobić jest to przejście przez wszystkie niezbę...

Dziel się z innymi:
Coded UI Test - tworzenie testów UI przy pomocy Visual Studio Ultimate ~  Premium Hands

Windows 2263 dni, 13 godzin, 28 minut temu premium-hands-net 174 rozwiń

Poprawnie zaprojektowana aplikacja powinna weryfikować dane w każdej warstwie systemu. Oczywiście najważniejszym miejscem jest warstwa biznesowa ale dobrym zwyczajem jest walidacja również w warstwie prezentacji. W idealnym interfejsie użytkownik nie jest w stanie wprowadzić błędnych danych. Podstawowym przykładem są pola edycyjne w których powinno się wpisać np. ilość sprzedanego produktu. Użytkownik nie powinien mieć możliwości wprowadzenia tekstu w takie pole. Zacznijmy od prostej sprawy – akceptacja...

Tagi: weryfikacja
Dziel się z innymi:
Piotr Zieliński » IntTextBox oraz RealTextBox w WPF

Windows 2268 dni, 10 godzin, 59 minut temu pzielinski 81 rozwiń

W miarę przeglądania dokumentacji wyławiam z niej różne mniej pierwszoplanowe informacje. Powstają z tego robocze zapiski, które myślę mogę tutaj również zamieszczać. WinJS.xhr At install time, the user sees which capabilities an app asks for, so the app is installed only if the user agrees for it to access those resources. Windows.Web.Syndication.SyndicationClient To use WinJS templates, we must reference the bulk of the WinJS CSS and JavaScript files. These files provide the styles and behavior for t...

Tagi: Windows 8
Dziel się z innymi:
Notatki o Windows 8 - odc.1

Windows 2271 dni, 10 godzin, 5 minut temu paduda 176 rozwiń

Na różnych forach często użytkownicy mają problem z aktualizacją kontrolek z innego wątku. Załóżmy, że odpaliliśmy sobie BackgroundWorker lub po prostu Thread. Wykonujemy jakieś operację, np. łączymy się ze zdalnymi zasobami. Stworzenie osobnego wątku w takim scenariuszu jest bardzo pożądane ponieważ nie blokujemy wtedy aktualizacji interfejsu. W trakcie pobierania informacji z Internetu chcemy aktualizować interfejs aby informować użytkownika o postępach np.progressBar.Value = progessValue; Jeśli powyż...

Dziel się z innymi:
Piotr Zieliński » Aktualizacja interfejsu z drugiego wątku(windows forms i WPF)

Windows 2272 dni, 4 godziny, 15 minut temu pzielinski 392 rozwiń

Na pierwszy rzut oka, TextBlock oraz Label są bardzo podobne. Obydwie kontrolki(?)  wyświetlają tekst. Różnice są jednak spore i postaram się je wyjaśnić. Sprawdźmy co następujący kod wyświetli: Kontrolka Label jest lekko przesunięta w prawo. Jest to spowodowane faktem, że Padding dla Label domyślnie ma wartość 5. W przypadku TextBlock jest to 0, dlatego też na powyższym screenie TextBlock przylega do krawędzi. Ustawmy IsEnabled StackPanel’a na false i sprawdźmy jak zachowają się kontrolki: Lab...

Tagi: Label, TextBlock
Dziel się z innymi:
Piotr Zieliński » WPF: TextBlock vs. Label

Windows 2276 dni, 1 godzinę, 13 minut temu pzielinski 164 rozwiń

Często musimy implementować interfejs INotifyPropertyChanged. Szczególnie w przypadku wykorzystania wzorca MVVM oraz WPF. Najczęściej programiści wykorzystują podstawową implementację i przekazują nazwę parametru jako czysty string np:if(PropertyChanged!=null) { PropertyChanged(this,new PropertyChangedEventArgs("propName")); } Wszystko działa bardzo dobrze, dopóki nie zmienimy nazwy właściwości. Przede wszystkim należy wtedy pamiętać o zaktualizowaniu wszystkich wywołań ProperyChanged. Nie możemy po...

Dziel się z innymi:
Piotr Zieliński » PropertyChanged bez przekazywania string’a

Windows 2277 dni, 13 godzin, 26 minut temu pzielinski 458 rozwiń

W ramach uczestnictwa w kursie WPF czytam ksiązkę "WPF 4 Unleashed" i przygotowuje jakieś przykłady sprawdzające co tam pan autor pisze w tej książce. Jeden z początkowych rozdziałów (tak, dopiero rozpoczynam kurs i książkę) poświęcony jest tematyce transformacji kontrolek, w związku z tym napisałem prosty przykład ukazyjący omawiane tranformacje. W zasadzie testuje tylko trzy z pięciu, ponieważ przesunięcie obiektów nie jest zbyt widowiskowe, a wykorzystanie macierzy nie jest na moją głowę. Zostają tylk...

Dziel się z innymi:
jsthedeveloper: WPF - rotacja, transformacja i przechylanie

Windows 2278 dni, 16 godzin, 48 minut temu Paweł Łukasik 129 rozwiń

Ostatnio napotkałem problem stworzenia menu zawierającego zarówno dynamiczne elementy (binding) jak i statyczne. Okazało się, że wcale nie jest to takie proste jak to jest w przypadku większości rzeczy w WPF. Zacznijmy jednak od przedstawienia sposobów tworzenia menu w WPF. Pierwszy to oczywiste statyczne menu, w całości zdefiniowane w XAML: W powyższym kodzie nie ma nic nadzwyczajnego. Sytuacja jest również łatwa gdy chcemy w całości zdefiniować menu jako dynamiczne: Gdzie pojedynczy item to:publiccl...

Tagi: menu
Dziel się z innymi:
Piotr Zieliński » WPF, dynamiczne i statyczne menu

Windows 2281 dni, 18 godzin, 15 minut temu pzielinski 194 rozwiń

autor:W poście tym wrócę jeszcze do tematu uruchamiania kilku usług w jednym procesie. Otóż, ciekawe jest to, że można konfigurować to zachowanie już po zainstalowaniu usługi. Służy do tego, i nie tylko tego, program wiersza poleceń o nazwie sc. Poniżej przedstawiam przykład jego użycia. Zacznijmy od pobrania konfiguracji usługi ABC przy pomocy komendy sc query ABC. Przykładowy wynik pokazałem poniżej. SERVICENAME: ABC TYPE : 20 WIN32SHARE_PROCESS STATE ...

Tagi: sc, serwis, Windows
Dziel się z innymi:
Wiele usług w jednym procesie 2

Windows 2293 dni, 23 godziny, 27 minut temu macko 63 rozwiń

W .NET 4.0 dodano (mało chyba popularną) klasę MemoryCache służącą do buforowania danych. Wcześniej programiści znali podobną klasę w ASP.NET. Od wersji 4.0 została ona wydzielona i można z niej teraz korzystać we wszystkich typach aplikacji – także WPF i WinForms.  Za pomocą MemoryCache można ustawić czas  ważności danych w buforze za pomocą czasu absolutnego,  priorytetu, monitorów, które unieważniają dane np. na podstawie zmiany pliku na dysku lub tzw. SlidingExpiration – czasu który upłynął od ostatn...

Dziel się z innymi:
Piotr Zieliński » MemoryCache–buforowanie w .NET 4.0

Windows 2297 dni, 17 godzin, 52 minuty temu pzielinski 279 rozwiń

Istnieje kilka podejść do debugowania usług systemowych. Jeśli chcemy debugować już uruchomioną usługę to możemy skorzystać z opcji Attach to process.... Sprawa jest trudniejsza jeśli chcemy podłączyć się do usługi w momencie jej uruchamiania. W takim wypadku można w kodzie usługi wywołać metodę Debugger.Brake. Są też inne sposoby, na przykład sztuczne opóźnienie startu usługi, tak aby zdążyć się do niej podpiąć. Ostatnio poznałem nowe, bardzo ciekawe podejście. Polega ono na stwor...

Dziel się z innymi:
Wiele usług w jednym procesie

Windows 2297 dni, 17 godzin, 52 minuty temu macko 204 rozwiń

Myślę, że każdy programista zetknął się kiedyś z tym, że chciał wywołać pojawiający wcześniej problem w aplikacji. Niestety, nie zawsze jednak pamiętamy, kiedy on wystąpił. Podobnie czasem testerzy chcieliby wysłać opis problemu w najlepszy możliwy do sprawdzenia sposób – od strony użytkownika. Ostatnio dzięki koledze z pracy dowiedziałem się o narzędziu standardowo dołączanym do systemu Windows – Problem Step Recorder. Aby uruchomić aplikację w m...

Tagi: bug, problem
Źródło: bulak.home.pl
Dziel się z innymi:
Witold Bulak  | Problem Step Recorder

Windows 2304 dni, 5 godzin, 33 minuty temu Witek 166 rozwiń

Domyślnie WPF wyświetla okno dialogowe nieobsłużonego błędu a następnie po przyciśnięciu przycisku aplikacja zostaje zamknięta. W poście zajmiemy jednak się przeładowaniem tego zachowania poprzez np. zapis błędu do pliku. W WPF możemy wykorzystać zdarzenie DispatcherUnhandledException(plik App.xaml.cs), która wywoływana jest dla nieobsłużonych wyjątków. Jeśli zatem w kodzie znajdzie się wywołanie throw bez klauzuli catch, zdarzenie DispatcherUnhandledException zostanie uruchomione. Przykład, plik app.xam...

Tagi: WPF, wyjątki
Dziel się z innymi:
Piotr Zieliński  » Nieobsłużone wyjątki w WPF

Windows 2305 dni, 13 godzin, 2 minuty temu pzielinski 169 rozwiń

Jakiś czas temu napotkałem na problem podczas próby przypisania własnego kontekstu kontrolce ContextMenu. Zacznijmy może od razu od przykładu XAML: Prosty widok  – zwykły Grid z kontekstowym menu. DataContext ustawiam na SimpleVIewModel a następnie binduje właściwość Text. Code-behind wygląda następująco:publicpartialclass MainWindow : Window { public MainWindow() { SimpleViewModel =new WpfApplication1.SimpleViewModel(); DataContext =this; InitializeComponent(); } ...

Dziel się z innymi:
Piotr Zieliński » ContextMenu, DataContext oraz problemy z binding

Windows 2308 dni, 7 godzin, 34 minuty temu pzielinski 116 rozwiń

W poprzedniej notce opisałem technikę pozwalającą na debuggowanie dynamic assemblies przy wykorzystaniu najnowszej wersji biblioteki sosex w ramach WinDbg. Tym razem sprawdzimy skuteczność tej metody w odniesieniu do SQL-CLR. Nieco przydługawy, ale konieczny wstęp CLR pojawił się w SQL Serverze w wersji 2005 i pozostał w nim na dobre. Dzięki jego obecności można pisać triggery, procedury składowane, funkcje, agregaty oraz własne typy danych definiowane przez użytkownika i korzystać z nich w podobny sposó...

Źródło: zine.net.pl
Dziel się z innymi:
SQL-CLR - debuggowanie z użyciem WinDbg

Windows 2308 dni, 7 godzin, 34 minuty temu macko 130 rozwiń

Kilka miesięcy temu pisałem o attached behaviour jako sposobie na wiązanie zdarzeń do komend. Sposób całkowicie poprawny i wygodny w użyciu. Dzisiaj jednak chciałbym przedstawić nieco prostsze rozwiązanie z wykorzystaniem bibliotek z Expression Blend SDK. Jeśli jeszcze nie posiadacie SDK możecie je ściągnąć ze strony Microsoft’u. Do projektu dołączamy  bibliotekę System.Windows.Interactivity (SDK). Następnie w pliku XAML spróbujmy powiązać zdarzenie MouseMove z komendą ShowMsgCmd: Namespace “i” powin...

Tagi: MVVM, WPF
Dziel się z innymi:
Piotr Zieliński » Binding zdarzeń w WPF, MVVM cz.2

Windows 2315 dni, 2 godziny, 13 minut temu pzielinski 426 rozwiń

1 2... 7 8 9 10 11 12... 21 22
Szkolenia SecurITum

marzec

09.
Wroc#
Wrocław
12.
13.
Dodaj nowe Zobacz wszystkie

Najaktywniejsi

1

Paweł Łukasik (32 867,57)

2

macko (32 816,53)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,87)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 391,11)

8

Damian (9 408,13)

9

danielplawgo (7 235,99)

10

arek (6 807,95)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 798,06)

15

dpawlukiewicz (3 446,71)

16

spetz (3 418,34)

17

jedmac (3 318,39)

18

http://jakub-flor... (3 224,66)

19

AdrianBystrek (3 115,78)

20

CaMeL (2 954,87)