void NavigationViewProperties::EnsureProperties()

in dev/Generated/NavigationView.properties.cpp [69:478]


void NavigationViewProperties::EnsureProperties()
{
    if (!s_AlwaysShowHeaderProperty)
    {
        s_AlwaysShowHeaderProperty =
            InitializeDependencyProperty(
                L"AlwaysShowHeader",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnAlwaysShowHeaderPropertyChanged));
    }
    if (!s_AutoSuggestBoxProperty)
    {
        s_AutoSuggestBoxProperty =
            InitializeDependencyProperty(
                L"AutoSuggestBox",
                winrt::name_of<winrt::AutoSuggestBox>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::AutoSuggestBox>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnAutoSuggestBoxPropertyChanged));
    }
    if (!s_CompactModeThresholdWidthProperty)
    {
        s_CompactModeThresholdWidthProperty =
            InitializeDependencyProperty(
                L"CompactModeThresholdWidth",
                winrt::name_of<double>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<double>::BoxValueIfNecessary(641.0),
                winrt::PropertyChangedCallback(&OnCompactModeThresholdWidthPropertyChanged));
    }
    if (!s_CompactPaneLengthProperty)
    {
        s_CompactPaneLengthProperty =
            InitializeDependencyProperty(
                L"CompactPaneLength",
                winrt::name_of<double>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<double>::BoxValueIfNecessary(48.0),
                winrt::PropertyChangedCallback(&OnCompactPaneLengthPropertyChanged));
    }
    if (!s_ContentOverlayProperty)
    {
        s_ContentOverlayProperty =
            InitializeDependencyProperty(
                L"ContentOverlay",
                winrt::name_of<winrt::UIElement>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::UIElement>::BoxedDefaultValue(),
                nullptr);
    }
    if (!s_DisplayModeProperty)
    {
        s_DisplayModeProperty =
            InitializeDependencyProperty(
                L"DisplayMode",
                winrt::name_of<winrt::NavigationViewDisplayMode>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewDisplayMode>::BoxValueIfNecessary(winrt::NavigationViewDisplayMode::Minimal),
                winrt::PropertyChangedCallback(&OnDisplayModePropertyChanged));
    }
    if (!s_ExpandedModeThresholdWidthProperty)
    {
        s_ExpandedModeThresholdWidthProperty =
            InitializeDependencyProperty(
                L"ExpandedModeThresholdWidth",
                winrt::name_of<double>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<double>::BoxValueIfNecessary(1008.0),
                winrt::PropertyChangedCallback(&OnExpandedModeThresholdWidthPropertyChanged));
    }
    if (!s_FooterMenuItemsProperty)
    {
        s_FooterMenuItemsProperty =
            InitializeDependencyProperty(
                L"FooterMenuItems",
                winrt::name_of<winrt::IVector<winrt::IInspectable>>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IVector<winrt::IInspectable>>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnFooterMenuItemsPropertyChanged));
    }
    if (!s_FooterMenuItemsSourceProperty)
    {
        s_FooterMenuItemsSourceProperty =
            InitializeDependencyProperty(
                L"FooterMenuItemsSource",
                winrt::name_of<winrt::IInspectable>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IInspectable>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnFooterMenuItemsSourcePropertyChanged));
    }
    if (!s_HeaderProperty)
    {
        s_HeaderProperty =
            InitializeDependencyProperty(
                L"Header",
                winrt::name_of<winrt::IInspectable>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IInspectable>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnHeaderPropertyChanged));
    }
    if (!s_HeaderTemplateProperty)
    {
        s_HeaderTemplateProperty =
            InitializeDependencyProperty(
                L"HeaderTemplate",
                winrt::name_of<winrt::DataTemplate>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::DataTemplate>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnHeaderTemplatePropertyChanged));
    }
    if (!s_IsBackButtonVisibleProperty)
    {
        s_IsBackButtonVisibleProperty =
            InitializeDependencyProperty(
                L"IsBackButtonVisible",
                winrt::name_of<winrt::NavigationViewBackButtonVisible>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewBackButtonVisible>::BoxValueIfNecessary(winrt::NavigationViewBackButtonVisible::Auto),
                winrt::PropertyChangedCallback(&OnIsBackButtonVisiblePropertyChanged));
    }
    if (!s_IsBackEnabledProperty)
    {
        s_IsBackEnabledProperty =
            InitializeDependencyProperty(
                L"IsBackEnabled",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnIsBackEnabledPropertyChanged));
    }
    if (!s_IsPaneOpenProperty)
    {
        s_IsPaneOpenProperty =
            InitializeDependencyProperty(
                L"IsPaneOpen",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnIsPaneOpenPropertyChanged));
    }
    if (!s_IsPaneToggleButtonVisibleProperty)
    {
        s_IsPaneToggleButtonVisibleProperty =
            InitializeDependencyProperty(
                L"IsPaneToggleButtonVisible",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnIsPaneToggleButtonVisiblePropertyChanged));
    }
    if (!s_IsPaneVisibleProperty)
    {
        s_IsPaneVisibleProperty =
            InitializeDependencyProperty(
                L"IsPaneVisible",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnIsPaneVisiblePropertyChanged));
    }
    if (!s_IsSettingsVisibleProperty)
    {
        s_IsSettingsVisibleProperty =
            InitializeDependencyProperty(
                L"IsSettingsVisible",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnIsSettingsVisiblePropertyChanged));
    }
    if (!s_IsTitleBarAutoPaddingEnabledProperty)
    {
        s_IsTitleBarAutoPaddingEnabledProperty =
            InitializeDependencyProperty(
                L"IsTitleBarAutoPaddingEnabled",
                winrt::name_of<bool>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<bool>::BoxValueIfNecessary(true),
                winrt::PropertyChangedCallback(&OnIsTitleBarAutoPaddingEnabledPropertyChanged));
    }
    if (!s_MenuItemContainerStyleProperty)
    {
        s_MenuItemContainerStyleProperty =
            InitializeDependencyProperty(
                L"MenuItemContainerStyle",
                winrt::name_of<winrt::Style>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::Style>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemContainerStylePropertyChanged));
    }
    if (!s_MenuItemContainerStyleSelectorProperty)
    {
        s_MenuItemContainerStyleSelectorProperty =
            InitializeDependencyProperty(
                L"MenuItemContainerStyleSelector",
                winrt::name_of<winrt::StyleSelector>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::StyleSelector>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemContainerStyleSelectorPropertyChanged));
    }
    if (!s_MenuItemsProperty)
    {
        s_MenuItemsProperty =
            InitializeDependencyProperty(
                L"MenuItems",
                winrt::name_of<winrt::IVector<winrt::IInspectable>>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IVector<winrt::IInspectable>>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemsPropertyChanged));
    }
    if (!s_MenuItemsSourceProperty)
    {
        s_MenuItemsSourceProperty =
            InitializeDependencyProperty(
                L"MenuItemsSource",
                winrt::name_of<winrt::IInspectable>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IInspectable>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemsSourcePropertyChanged));
    }
    if (!s_MenuItemTemplateProperty)
    {
        s_MenuItemTemplateProperty =
            InitializeDependencyProperty(
                L"MenuItemTemplate",
                winrt::name_of<winrt::DataTemplate>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::DataTemplate>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemTemplatePropertyChanged));
    }
    if (!s_MenuItemTemplateSelectorProperty)
    {
        s_MenuItemTemplateSelectorProperty =
            InitializeDependencyProperty(
                L"MenuItemTemplateSelector",
                winrt::name_of<winrt::DataTemplateSelector>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::DataTemplateSelector>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnMenuItemTemplateSelectorPropertyChanged));
    }
    if (!s_OpenPaneLengthProperty)
    {
        s_OpenPaneLengthProperty =
            InitializeDependencyProperty(
                L"OpenPaneLength",
                winrt::name_of<double>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<double>::BoxValueIfNecessary(320.0),
                winrt::PropertyChangedCallback(&OnOpenPaneLengthPropertyChanged));
    }
    if (!s_OverflowLabelModeProperty)
    {
        s_OverflowLabelModeProperty =
            InitializeDependencyProperty(
                L"OverflowLabelMode",
                winrt::name_of<winrt::NavigationViewOverflowLabelMode>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewOverflowLabelMode>::BoxValueIfNecessary(winrt::NavigationViewOverflowLabelMode::MoreLabel),
                winrt::PropertyChangedCallback(&OnOverflowLabelModePropertyChanged));
    }
    if (!s_PaneCustomContentProperty)
    {
        s_PaneCustomContentProperty =
            InitializeDependencyProperty(
                L"PaneCustomContent",
                winrt::name_of<winrt::UIElement>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::UIElement>::BoxedDefaultValue(),
                nullptr);
    }
    if (!s_PaneDisplayModeProperty)
    {
        s_PaneDisplayModeProperty =
            InitializeDependencyProperty(
                L"PaneDisplayMode",
                winrt::name_of<winrt::NavigationViewPaneDisplayMode>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewPaneDisplayMode>::BoxValueIfNecessary(winrt::NavigationViewPaneDisplayMode::Auto),
                winrt::PropertyChangedCallback(&OnPaneDisplayModePropertyChanged));
    }
    if (!s_PaneFooterProperty)
    {
        s_PaneFooterProperty =
            InitializeDependencyProperty(
                L"PaneFooter",
                winrt::name_of<winrt::UIElement>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::UIElement>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnPaneFooterPropertyChanged));
    }
    if (!s_PaneHeaderProperty)
    {
        s_PaneHeaderProperty =
            InitializeDependencyProperty(
                L"PaneHeader",
                winrt::name_of<winrt::UIElement>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::UIElement>::BoxedDefaultValue(),
                nullptr);
    }
    if (!s_PaneTitleProperty)
    {
        s_PaneTitleProperty =
            InitializeDependencyProperty(
                L"PaneTitle",
                winrt::name_of<winrt::hstring>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::hstring>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnPaneTitlePropertyChanged));
    }
    if (!s_PaneToggleButtonStyleProperty)
    {
        s_PaneToggleButtonStyleProperty =
            InitializeDependencyProperty(
                L"PaneToggleButtonStyle",
                winrt::name_of<winrt::Style>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::Style>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnPaneToggleButtonStylePropertyChanged));
    }
    if (!s_SelectedItemProperty)
    {
        s_SelectedItemProperty =
            InitializeDependencyProperty(
                L"SelectedItem",
                winrt::name_of<winrt::IInspectable>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IInspectable>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnSelectedItemPropertyChanged));
    }
    if (!s_SelectionFollowsFocusProperty)
    {
        s_SelectionFollowsFocusProperty =
            InitializeDependencyProperty(
                L"SelectionFollowsFocus",
                winrt::name_of<winrt::NavigationViewSelectionFollowsFocus>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewSelectionFollowsFocus>::BoxValueIfNecessary(winrt::NavigationViewSelectionFollowsFocus::Disabled),
                winrt::PropertyChangedCallback(&OnSelectionFollowsFocusPropertyChanged));
    }
    if (!s_SettingsItemProperty)
    {
        s_SettingsItemProperty =
            InitializeDependencyProperty(
                L"SettingsItem",
                winrt::name_of<winrt::IInspectable>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::IInspectable>::BoxedDefaultValue(),
                winrt::PropertyChangedCallback(&OnSettingsItemPropertyChanged));
    }
    if (!s_ShoulderNavigationEnabledProperty)
    {
        s_ShoulderNavigationEnabledProperty =
            InitializeDependencyProperty(
                L"ShoulderNavigationEnabled",
                winrt::name_of<winrt::NavigationViewShoulderNavigationEnabled>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewShoulderNavigationEnabled>::BoxValueIfNecessary(winrt::NavigationViewShoulderNavigationEnabled::Never),
                winrt::PropertyChangedCallback(&OnShoulderNavigationEnabledPropertyChanged));
    }
    if (!s_TemplateSettingsProperty)
    {
        s_TemplateSettingsProperty =
            InitializeDependencyProperty(
                L"TemplateSettings",
                winrt::name_of<winrt::NavigationViewTemplateSettings>(),
                winrt::name_of<winrt::NavigationView>(),
                false /* isAttached */,
                ValueHelper<winrt::NavigationViewTemplateSettings>::BoxedDefaultValue(),
                nullptr);
    }
}