W Windows Store App tworzę, Chcę pokazać użytkownikowi różne komunikaty informacyjne. Wybrałem ListBox jako narzędzie, aby pokazać je tak, że mogą one przewijać je i wszystko, co dobre rzeczy.
Wiadomości mają wyłącznie charakter informacyjny, tak jest nie ma potrzeby, aby zapewnić wszystkich, że dodatkowe spacje wokół nich, ponieważ użytkownik nigdy nie może wybrać im do niczego. Domyślne zachowanie elementu ListBox stanowi znaczną część dopełnienie i chciałem się go pozbyć. Dobrze.... bezpośrednio nie można zrobić tego rodzaju rzeczy na ListBox. JEDNAK, można to zrobić do elementów, które można dodać:
prywatne nieważne AddGameStateLogMessage(ciąg Wiadomości) { Pole tekstowe t = Nowy Pole tekstowe(); t.Text = GameStateCounter + ": " + Wiadomości; t.TextWrapping = TextWrapping.Wrap; t.MinWidth = 400; Grubość thisPadding = Nowy Grubość(5, 0, 5, 0); t.Padding = thisPadding; t.FontSize = 12; ListBoxItem li = Nowy ListBoxItem(); li.Treść = t; li.MaxHeight = 25; thisPadding = Nowy Grubość(5, 0, 5, 0); li.Uzupełnienie = thisPadding; GameStateLog.Items.Insert(0,Li); }
w powyższym, Jestem utworzenie pola tekstowego i ustawienie jej czcionki, jego dopełnienie, itp.
Następny, Tworzenie ListBoxItem i ustawić jego zawartości do pola tekstowego sformatowanego.
Wreszcie, Wstawić ListBoxItem do listy. (Chcę pokazać najnowsze wiadomości w górnej części listy, stąd Insert(0,Li) a nie proste Dodawanie() wywołania.).
I będzie się szczypanie to nieco wcześniej, jestem naprawdę zadowolony z zachowaniem ListBox, ale wzór pokazany powyżej była bardzo owocna. Mam nadzieję, że ktoś znajdzie to pomocne.
</koniec>
Follow me on Twitter wiek na http://www.twitter.com/pagalvin