Praca na zaliczenie w .net c# – 4 zadania
Project detail
1. Zdefiniować szkielet okna głównego aplikacji oraz zasoby aplikacji.
Okno główne powinno się składać z umieszczonych na siatce:
WrapPanel-u u góry lub dołu okna, z umieszczonymi na nim (poziomo z zawijaniem) przyciskami.
StackPanel-u po lewej lub prawej stronie okna, z umieszczonymi na nim etykietami opisującymi grupy przycisków
W zasobach należy zdefiniować:
Styl dla Label – pogrubiony tekst, font size na 24,
Specjalny styl dla Label (wystarczy na jednej wybranej) definiowany z użyciem BasedOn, który poza tym co wyżej zmienia kolor tekstu (np: #900)
Styl dla Button – standardowe tło zmienione na inny odcień (np: #EEE), font size na 20
Drugi styl dla Button (np osobny dla WrapPanelu) – font size na 20 i modyfikacja kolorów: statycznego, przy najechaniu i przy kliknięciu (np: #DDF, #99D, #99F)
Wszystkie opisane kolory mają być definiowane jako nazwane zasoby (SolidColorBrush)
2.
uzupełnić aplikację kalkulatora
Kalkulator ma prezentować, poza wynikiem/wprowadzaną właśnie liczbą, etykietę z wypisanym poprzednio wykonanym działaniem i jego operandami
Działania dwuargumentowe:
dodawanie
odejmowanie
mnożenie
dzielenie
potęgowanie
dzielenie modulo
wersje procentowe działań
Działania (funkcje) jednoargumentowe:
pierwiastek kwadratowy
wzięcie odwrotności liczby (1/x)
silnia (sami decydujemy, czy obliczamy odp silni dla niecałkowitej liczby z użyciem funkcji gamma czy zaokrąglamy liczbę przedtem, czy nie pozwalamy na taką operację)
logarytm (10 i/lub naturalny i/lub binarny)
zaokrąglenie w dół i w górę (podłoga i sufit)
3.
Zdefiniować aplikację z listą filmów/albumów muzycznych – binding pomiędzy kontrolką przyjmującą kolekcję a kolekcją (IEnumerable ObservableCollection), przyciskiem Edytuj przenoszącym do nowego okna i oknem edycji szczegółów wybranego elementu listy z bindingiem pomiędzy odpowiednimi kontrolkami i właściwościami, oraz przyciskiem Dodaj – tworzącym nowy element odpowiedniego typu; Właściwości klasy definiującej obiekty na liście powinny się znaleźć:
string Tytuł
string Reżyser (filmu) / Autor (muzyki)
string Wydawca (muzyki) / Studio (filmowe)
string Nośnik
albo string Długość (film, muzyka) – zrobić właściwość konwertującą z/do pola TimeSpan
albo DateTime DataWydania
W razie potrzeby notyfikujemy o zmianach właściwości
4.
Napisać aplikację, która korzystając z danych zdefiniowanych w XML wyświetli w oknie głównym listę elementów – kategorii – z opcją otwarcia nowego okna z widokiem kategorii. Okno kategorii ma analogicznie wyświetlać podkategorie na liście, oraz paruelementowy blok szczegółów, a także umożliwiać otwarcie okna podkategorii. Okno podkategorii ma analogicznie wyświetlać blok szczegółów podkategorii, oraz elementy podkategorii na DataGrid-zie z kolumnami wyświetlającymi odpowiednie szczegóły.
Przykładowo:
Kategorie: kategorie pojazdów, np samochody osobowe, ciężarowe, motory, samoloty…; opis kategorii nie musi być rozbudowany
Podkategorie: marki pojazdów z danej kategorii, opis podkategorii to podstawowe informacje o marce (np macierzysty koncern, data powstania, kraj(e) produkcji)
Elementy: poszczególne modele, każdy z informacją o nazwie, roku produkcji, pojemność silnika, rodzaj napędu…