Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Visual Studio zawiera zestaw narzędzi środowiska uruchomieniowego, które umożliwiają projektowanie, iterowanie i sprawdzanie kodu XAML winUI 3 podczas działania aplikacji. Stosowane razem zapewniają szybki cykl edycji, przeładowania i inspekcji, który pokazuje prawdziwy interfejs użytkownika — prawdziwe style, prawdziwe szablony danych, prawdziwe animacje — a nie statyczną namiastkę.
Note
Program Visual Studio Projektant XAML (karta Projektowanie z funkcją przeciągania i upuszczania) obecnie nie obsługuje projektów WinUI 3. Jeśli otworzysz plik .xaml i zobaczysz tylko edytor XML, z instalacją wszystko jest w porządku — widok projektanta nie jest dostępny w WinUI 3. Prośba o dodanie funkcji jest śledzona w witrynie Developer Community: Dodanie obsługi projektanta XAML dla aplikacji klasycznych WinUI 3. Aby uzyskać podstawowe informacje o pracach inżynieryjnych, zobacz dyskusję WindowsAppSDK nr 4710.
Narzędzia środowiska uruchomieniowego opisane w tym artykule są wartościowe niezależnie od tego, czy projektant jest dostępny, czy nie. W tym artykule przedstawiono przepływ pracy.
Czego użyjesz
| Narzędzie | Do czego służy | Jak go otworzyć |
|---|---|---|
| Szybkie przeładowanie XAML | Wprowadza zmiany XAML do działającej aplikacji bez konieczności ponownego uruchamiania | Automatyczne — edytowanie dowolnego .xaml pliku podczas debugowania |
| Dynamiczne drzewo wizualne | Wyświetla drzewo elementów pełnego środowiska uruchomieniowego i umożliwia wybranie elementów w aplikacji | Debugowanie>Windows>Drzewo wizualne na żywo |
| Eksplorator właściwości na żywo | Wyświetla i umożliwia edytowanie każdej właściwości w wybranym elemecie w czasie wykonywania | Debug>Windows>Eksplorator właściwości na żywo |
| Podgląd na żywo XAML | Renderuje uruchomioną aplikację wewnątrz Visual Studio, aby można było sprawdzić bez przełączania okien | Debugowanie>Windows>Podgląd XAML na żywo |
Tip
Dock Live Visual Tree i Live Property Explorer obok siebie. Razem zapewniają szczegółowy widok inspekcji, który pokazuje rzeczywiste wartości środowiska uruchomieniowego.
Prerequisites
- Visual Studio 2022 w wersji 17.0 lub nowszej (zawiera funkcje XAML Przeładowywanie na gorąco i Live Visual Tree).
- Projekt WinUI 3 korzystający z Zestaw SDK do aplikacji systemu Windows. Zobacz Tworzenie i uruchamianie projektu WinUI 3 , aby go utworzyć.
- Projekt powinien być ukierunkowany na platformę .NET 6 lub nowszą wersję (C#) albo korzystać z C++/WinRT.
Krok 1. Uruchamianie aplikacji w debugerze
Naciśnij klawisz F5 (lub Debuguj>rozpocznij debugowanie). XAML Przeładowywanie na gorąco aktywuje się automatycznie, gdy debuger zostanie dołączony.
Pasek narzędzi XAML Przeładowywanie na gorąco pojawia się na nakładce w aplikacji. Jeśli go nie widzisz, sprawdź, czy ustawienie jest włączone:
- Przejdź do pozycji Narzędzia>Opcje>debugowania>Przeładowywanie na gorąco XAML.
- Upewnij się, że zaznaczono opcję Włącz Przeładowywanie na gorąco XAML.
Ważna
Przeładowywanie na gorąco XAML wymaga debugera. Uruchamianie bez debugowania (Ctrl+F5) powoduje wyłączenie Przeładowywanie na gorąco, live visual tree i Live Property Explorer.
Krok 2. Edytowanie kodu XAML i natychmiastowe wyświetlanie zmian
Po uruchomieniu aplikacji przejdź w edytorze do dowolnego pliku .xaml i wprowadź zmianę — na przykład zmień kolor Background lub dodaj nowy plik Button. Uruchomiona aplikacja zostanie zaktualizowana w ciągu sekundy lub dwóch bez ponownego uruchomienia.
Co Przeładowywanie na gorąco może i nie może zrobić
Przeładowywanie na gorąco obsługuje najpopularniejsze edycje:
- Dodawanie, usuwanie lub zmienianie kolejności elementów
- Zmienianie wartości właściwości (kolory, marginesy, tekst, rozmiary)
- Dodawanie lub modyfikowanie stylów i słowników zasobów
- Zmienianie zawartości szablonu danych
Niektóre zmiany wymagają ponownego uruchomienia:
- Dodawanie nowych klas, procedur obsługi zdarzeń za pomocą kodu lub
x:Classzmian - Modyfikowanie
App.xamlscalonych słowników (czasami) - Zmienianie
x:Bindwyrażeń odwołujących się do nowych właściwości
Gdy funkcja Przeładowywanie na gorąco nie może zastosować zmiany, na pasku narzędzi jest wyświetlane powiadomienie. Wystarczy ponownie uruchomić aplikację, aby pobrać te zmiany.
Aby uzyskać więcej informacji, zobacz Przeładowywanie na gorąco XAML.
Krok 3: Sprawdź drzewo wizualne i właściwości
Otwórz okno Live Visual Tree (Debug>Windows>Live Visual Tree). To okno pokazuje wszystkie elementy w drzewie interfejsu użytkownika uruchomionej aplikacji, uporządkowane według relacji nadrzędny–podrzędny.
Wizualne wybieranie elementów
- Na pasku narzędzi Live Visual Tree (Dynamiczne drzewo wizualne) włącz opcję Wybierz element w uruchomionej aplikacji (przycisk celownika).
- Kliknij dowolny element w uruchomionej aplikacji — drzewo przejdzie do tego elementu, a Eksplorator właściwości na żywo wyświetli jego właściwości.
Jest to odpowiednik kliknięcia elementu w obszarze projektowym w czasie wykonywania, z tą różnicą, że dokładnie odzwierciedla to, co renderuje aplikacja, w tym elementy tworzone dynamicznie w kodzie.
Edytuj właściwości w czasie wykonywania
W Eksploratorze właściwości na żywo można zmieniać wartości właściwości w czasie rzeczywistym. Przykład:
- Zmień wartość ,
Marginaby dostosować odstępy i natychmiast zobaczyć efekt. - Ustaw
VisibilitynaCollapsed, aby sprawdzić, co się stanie, gdy element jest ukryty. - Dostosuj
HeightlubWidth, aby przetestować responsywne układy.
Te edycje środowiska uruchomieniowego nie są zapisywane z powrotem do pliku XAML — są przeznaczone do eksperymentowania. Po znalezieniu podobnych wartości wpisz je w .xaml pliku (gdzie Przeładowywanie na gorąco pobiera je i sprawia, że są trwałe).
Krok 4. Używanie podglądu XAML na żywo
Podgląd XAML na żywo renderuje uruchomioną aplikację na karcie Visual Studio, dzięki czemu możesz wyświetlać aplikację i źródło XAML obok siebie bez przełączania okien.
Aby go otworzyć: Debugowanie>Windows>XAML na żywo w wersji zapoznawczej.
Jest to szczególnie przydatne w konfiguracjach z jednym monitorem, w których przełączanie się za pomocą Alt+Tab między aplikacją a Visual Studio jest niewygodne.
Aby uzyskać więcej informacji, zobacz XAML Live Preview.
Zalecane: Utwórz stronę testową interfejsu użytkownika
Utwórz dedykowaną stronę placu zabaw w projekcie — stronę, której jedynym celem jest eksperymentowanie z kontrolkami, stylami i układami. Zapewnia to podstawkę, która jest zawsze gotowa do iteracji wizualnej i jest szczególnie dobrze sparowana z powyższymi narzędziami środowiska uruchomieniowego.
Konfigurowanie placu zabaw
Kliknij prawym przyciskiem myszy swój projekt w Eksplorator rozwiązań i wybierz Dodaj>Nowy element>. Nadaj mu nazwę
UIPlayground.xaml.W
UIPlayground.xamlpliku dodaj sekcjeScrollViewerz sekcjami dla każdej kontrolki lub wzorca, który chcesz wypróbować:<Page x:Class="MyApp.UIPlayground" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <ScrollViewer Padding="24"> <StackPanel Spacing="24"> <!-- Section: Buttons --> <TextBlock Text="Buttons" Style="{StaticResource SubtitleTextBlockStyle}"/> <StackPanel Orientation="Horizontal" Spacing="8"> <Button Content="Standard"/> <Button Content="Accent" Style="{StaticResource AccentButtonStyle}"/> <ToggleButton Content="Toggle"/> <HyperlinkButton Content="Link" NavigateUri="https://learn.microsoft.com"/> </StackPanel> <!-- Section: Text input --> <TextBlock Text="Text input" Style="{StaticResource SubtitleTextBlockStyle}"/> <TextBox PlaceholderText="Type here..." Width="300" HorizontalAlignment="Left"/> <PasswordBox PlaceholderText="Password" Width="300" HorizontalAlignment="Left"/> <!-- Add more sections as needed --> </StackPanel> </ScrollViewer> </Page>Spraw, aby plac zabaw był łatwo dostępny. Podczas programowania ustaw ją jako stronę uruchamiania w pliku
App.xaml.cs:// In App.xaml.cs, OnLaunched method — swap in for quick playground access: // rootFrame.Navigate(typeof(UIPlayground));Lub jeśli aplikacja używa elementu
NavigationView, dodaj element menu, który jest wyświetlany tylko w kompilacjach debugowania. Na przykład w kodzie okna głównego:// In your main window or shell page constructor, after InitializeComponent(): #if DEBUG NavView.MenuItems.Add(new NavigationViewItem { Content = "UI Playground", Tag = typeof(UIPlayground) }); #endifgdzie
NavViewtoNavigationViewkontrolkix:Name.
Jak korzystać z placu zabaw
- Naciśnij klawisz F5 , aby uruchomić aplikację i przejść do strony placu zabaw.
-
.xamlOtwórz plik obok uruchomionej aplikacji (lub użyj podglądu XAML Na żywo). - Dodaj lub zmodyfikuj formanty w edytorze XAML — funkcja Przeładowywanie na gorąco natychmiast wprowadza zmiany.
- Użyj dynamicznego drzewa wizualnego , aby kliknąć renderowane kontrolki i sprawdzić ich rzeczywiste wartości układu w Eksploratorze właściwości live.
- Gdy będziesz zadowolony z wyglądu kontrolki, skopiuj kod XAML do docelowej strony.
Ten schemat zapewnia cykl „type-reload-inspect” — a ponieważ uruchamia rzeczywisty kod, widzisz rzeczywiste szablony danych, style i animacje.
Porównywanie metod czasu projektowania i środowiska uruchomieniowego
Poniżej przedstawiono sposób mapowania typowych zadań projektowych interfejsu użytkownika na narzędzia środowiska uruchomieniowego:
| Zadanie | Narzędzie środowiska uruchomieniowego |
|---|---|
| Dodawanie kontrolki do strony | Wpisz element XAML — funkcja IntelliSense uzupełnia tag i wymagane właściwości |
| Podgląd kontrolki | Zobacz to na żywo w uruchomionej aplikacji dzięki funkcji Przeładowywanie na gorąco |
| Wybierz element do sprawdzenia | Użyj Drzewa wizualnego na żywo>Wybierz element (celownik) |
| Wyświetlanie lub edytowanie właściwości | Użyj Eksploratora właściwości na żywo |
| Dopasuj rozmiar lub położenie | Edytuj Width, Margin, Height w XAML lub w Eksploratorze właściwości na żywo |
Porady dotyczące wydajnego przepływu pracy
- Użyj aplikacji z galerii WinUI 3. Zainstaluj go z Microsoft Store lub skompiluj go z GitHub. Przedstawia każdą kontrolkę WinUI 3 z interaktywnymi przykładami i gotowym do kopiowania językiem XAML. Pomyśl o nim jako wykaz wizualizacji, który można przeglądać przed napisaniem kodu XAML.
- Pozostaw otwartą stronę środowiska testowego. Traktuj go jak przewodnik stylu życia dla aplikacji.
- Użyj
d:DesignHeightid:DesignWidth. Nawet bez projektanta te atrybuty wspierają mechanizm IntelliSense i pomagają zachować jednolity rozmiar stron, gdy otwierasz je w edytorze. - Połącz z oknem Błędy powiązań XAML. Otwórz to z menu Debug>>, aby wykryć błędy powiązań, których projektant nigdy by nie pokazał.
- Użyj zestawu narzędzi społeczności. Zestaw narzędzi Windows Community Toolkit udostępnia kontrolki i pomocniki, które zmniejszają ilość układu potrzebnego do ręcznego kodu.