Я хочу использовать PrintHelper из Windows Community Toolkit в приложении Xamarin Forms (в конкретной службе, используемой только в приложении UWP), но я не знаю, поддерживается ли он.
Даже еслимое приложение написано на Xamarin, так как оно все еще UWP и .Net, я бы подумал, что оно будет работать нормально, но когда я попробовал, я смог получить только предварительный просмотр.Возможно, я что-то делаю не так, но я не смог найти примеры того, как использовать PrintHelper в приложении Xamarin.
Как контейнер типа Windows.UI.Xaml.Control.Panel необходим дляпостроить PrintHelper, я использую панель с собственными представлениями в моем Xamarin.Forms xaml, и я передаю ContentView, который содержит панель, моему методу обслуживания, который выполняет печать:
public async Task Print(Xamarin.Forms.ContentView parentContainer)
{
var panelWrapper = (Xamarin.Forms.Platform.UWP.NativeViewWrapper)parentContainer.Content;
var panel = (Panel)panelWrapper.NativeElement;
PrintHelper printHelper = new PrintHelper(panel);
printHelper.AddFrameworkElementToPrint(new TextBlock() { Text = "Hello World!" });
await printHelper.ShowPrintUIAsync("Title");
}
Это показывает печатьдиалоговое окно с пустым предварительным просмотром, но я ожидал страницу предварительного просмотра с надписью «Hello World».