TwoPaneView с платформой Uno

Я хочу разработать приложение для нового Surface Neo, используя платформу Uno. Для этого я попытался реализоватьTwoPaneViewв моем MainPage.xaml, но он не распознается должным образом. Также я загрузил NuGet-пакет Uno.DualScreen, но это не решило проблему.

Только с UWP и WinUI 2.4 он отлично работает, но, к сожалению, я не могу использовать android/ios с этим решением:

xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
...
<muxc:TwoPaneView/>

Кто-нибудь знает, как это правильно работает с платформой Uno?

1 ответ

Решение

Я без проблем использовал TwoPaneView в решении Uno Platform. Вам необходимо обновить все "головные" проекты до последней предварительной версии пакета Uno.UI, а затем установить пакет Nuget Microsoft.UI.Xaml в заголовке UWP. TwoPaneView реализован в пакетах Uno.UI и Microsoft.UI.Xaml (в одном пространстве имен) и условно компилируется. Вам не нужно объявлять конкретное пространство имен для TwoPaneView, и вы можете просто использовать:

<Page
    x:Class="TwoPainView.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid Background="Green">
        <TwoPaneView Pane1Length="0.3*" Pane2Length="0.7*" Background="Yellow" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" MinWideModeWidth="100">
            <TwoPaneView.Pane1>
                <Border>
                    <Rectangle Fill="LightBlue" />
                </Border>
            </TwoPaneView.Pane1>
            <TwoPaneView.Pane2>
                <Border>
                    <Rectangle Fill="LightGreen"/>
                </Border>
            </TwoPaneView.Pane2>
        </TwoPaneView>
    </Grid>
</Page>

У меня есть хранилище GitHub здесь, который я использовал, чтобы сообщить эту проблему для Uno. Он использует TwoPaneView и отлично работает как на UWP, так и на Android (должен работать на iOS, но у меня нет устройства iOS для тестирования), поэтому может помочь вам начать работу.

Надеюсь, это поможет.

Другие вопросы по тегам