tenho seguinte código c++

#pragma once

#include "MainWindow.g.h"

#include <winrt/Microsoft.UI.Windowing.h>
#include <winrt/Windows.Graphics.h>
#include <microsoft.ui.xaml.window.h>
using namespace winrt::Windows::Graphics;
using namespace winrt;
using namespace Microsoft::UI::Windowing;

//HWND hwnd{};
//window.as<IWindowNative>()->get_WindowHandle(&hwnd);

namespace winrt::DataIntegrityTools::implementation
{
    struct MainWindow : MainWindowT<MainWindow>
    {
        MainWindow()
        {
            InitializeComponent();

            int windowWidth = 1600;
            int windowHeight = 800;

            ExtendsContentIntoTitleBar(true);
            SetTitleBar(AppTitleBar);
            //window.Title(L"Data Integrity Tools");
            auto appWindow = AppWindow();
            //appWindow.SetIcon(L"Assets/app.ico");
            appWindow.Resize({ windowWidth, windowHeight });

            auto presenter = appWindow.Presenter().as<OverlappedPresenter>();
            presenter.IsResizable(false);
            presenter.IsMaximizable(false);

            RECT workArea;
            SystemParametersInfo(SPI_GETWORKAREA, 0, &workArea, 0);

            int screenWidth = workArea.right - workArea.left;
            int screenHeight = workArea.bottom - workArea.top;

            int posX = workArea.left + (screenWidth - windowWidth) / 2;
            int posY = workArea.top + (screenHeight - windowHeight) / 2;

            appWindow.Move({ posX, posY });
        }

        int32_t MyProperty();
        void MyProperty(int32_t value);
        //void AppTitleBar_PointerPressed(winrt::Windows::Foundation::IInspectable const& sender, winrt::Microsoft::UI::Xaml::Input::PointerRoutedEventArgs const& e);
    };
}

namespace winrt::DataIntegrityTools::factory_implementation
{
    struct MainWindow : MainWindowT<MainWindow, implementation::MainWindow>
    {
    };
}


no xaml tenho

<?xml version="1.0" encoding="utf-8"?>
<Window
    x:Class="DataIntegrityTools.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:DataIntegrityTools"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">
    <!-- PointerPressed="AppTitleBar_PointerPressed"-->
    <Grid>
        <Grid x:Name="AppTitleBar" Height="35" Background="#E3E3E3" VerticalAlignment="Top" >
            <Grid.ColumnDefinitions>
                <ColumnDefinition x:Name="LeftPaddingColumn" Width="0"/>
                <ColumnDefinition/>
                <ColumnDefinition x:Name="RightPaddingColumn" Width="0"/>
            </Grid.ColumnDefinitions>
            <Image x:Name="TitleBarIcon" Margin="-15,0,0,0" Source="ms-appx:///Assets/Square150x150Logo.scale-100.png"
               Grid.Column="1" HorizontalAlignment="Left" VerticalAlignment="Center" Width="80" Height="80"/>
            <TextBlock x:Name="TitleBarTextBlock" Foreground="Black" FontSize="16" FontStyle="Normal" FontWeight="Bold" Text="Data Integrity Tools" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Center"/>
        </Grid>
    </Grid>
</Window>


recebo erro ao compilar

error C3867: 'winrt::DataIntegrityTools::implementation::MainWindowT<winrt::DataIntegrityTools::implementation::MainWindow>::AppTitleBar': sintaxe não padrão. Use "&" para criar um ponteiro para membro