Jaka jest zalecana konwencja nazewnictwa kontroli dla znaczników XAML?

10

W pracy z WPF lub Silverlight, jak należy używać konwencji nazewnictwa kontroli? Czy nazywasz kontrolki w znacznikach XAML? Widziałem próbki projektów w codeplex z nazwami kontrolnymi, takimi jak „selectButton” lub „btnSelect”. Co byś polecił?

Mamta D.
źródło
1
Niezależnie od wybranego schematu - zachowaj spójność w swojej aplikacji.
ChrisF

Odpowiedzi:

8

Microsoft opublikował tutaj wytyczne na swojej stronie internetowej. Najważniejsze jest to, że węgierskie konwencje nazewnictwa zostały usunięte.

EDYTOWAĆ

Aby to wyjaśnić, Microsoft usunął notację węgierską ze wszystkich swoich konwencji nazewnictwa, w tym elementów interfejsu użytkownika. JEDNAK MS nie udokumentowało żadnych zaleceń dotyczących elementów interfejsu użytkownika. Istnieje wiele linków, które to zauważają i oferują ich sugestie, ale sedno jest takie, że z elementami interfejsu użytkownika jesteś sam. Przykładowy link .

W naszym standardzie porzuciliśmy notację węgierską i używamy jawnego nazewnictwa, co oznacza, że ​​przycisk o nazwie OK nazywałby się ButtonOK, blok tekstowy o nazwie Komentarze to TextblockComments. Minusem jest to, że nazwy mogą być dość długie, pozytywne jest to, że KAŻDY dokładnie wie, czym jest element.

Dopóki ustalisz, co działa dla Ciebie i konsekwentnie używasz tego standardu, nie możesz się pomylić.

Walter
źródło
2
Są to wytyczne dotyczące nazewnictwa elementów w bibliotekach, a nie elementów interfejsu użytkownika.
Robert Harvey,
@Robert - dobry punkt. Nie zauważyłem, że ich wytyczne wykluczają elementy interfejsu użytkownika. Zmienię swoją odpowiedź.
Walter,
4

Zwykle nie nazywam moich kontrolek w XAML, ponieważ byłoby to w większości przypadków nieużywane, biorąc pod uwagę, że wszystko jest ustawione lub kontrolowane przez powiązania. Źródło: Pete Brown

Matthieu
źródło
Ten sam artykuł mówi, że i tak będziesz musiał nazwać wszystkie elementy wprowadzania danych (pola tekstowe, pola wyboru, kombinacje), ponieważ będą one odwoływane w innym miejscu (na przykład w magazynie danych). Elementy chromowane (linie, kształty itp.) Nie muszą być nazywane, a fajnie, że XAML nie zmusza cię do tego.
Robert Harvey
@Robert Harvey: Z artykułu: „Interaktywne kontrolki interfejsu użytkownika, takie jak TextBox, ListBox, Przyciski itp. Możesz uciec bez nazywania ich, jeśli używasz poleceń / zachowań i dobrego wzorca, takiego jak MVVM, ale uważam, że nazywanie jest pomocne z punkt widzenia dokumentacji. Nie jest to żaden wymóg, ale pomocny. ". Kiedy poszedłem z MVVM i nie musiałem przekazywać mojego xamla projektantowi do mieszania, nie znalazłem żadnego zastosowania dla tych nazw. Moje kontrole są bardzo proste, dokumentacja dostarczona przez te nazwy byłaby przesada. Ale zgadzam się, że w bardziej złożonym interfejsie może być inaczej.
Matthieu,
Używam MVVM i rzadko nazywam swoje kontrolki. Jest całkiem oczywiste, czym są w kontekście i z projektantem VS. Czasami dodam komentarz do XAML.
M. Dudley,
2

Nie wiem o XAML, ale dla zwykłego starego ASP.NET, konwencje, które widziałem to:

  1. Dobry stary węgierski (np. TxtFirstName, ddlState, chkAcceptsTerms)
  2. Jawne nazewnictwo (np. TextFirstName, DropdownState, CheckAcceptsTerms)

Szczerze mówiąc, nie jestem pewien, który wolę. Widziałem dużo kodu, takiego jak # 2, ale odwrócone (np. FirstNameTex, StateDropdown, AcceptsTermsCheck), ale podoba mi się w inny sposób, ponieważ grupuje powiązane kontrolki razem.

Wayne Molina
źródło