TwoPaneView с платформой Uno - PullRequest
2 голосов
/ 30 марта 2020

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

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

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

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

1 Ответ

1 голос
/ 31 марта 2020

Я использовал TwoPaneView в решении Uno Platform без проблем. Необходимо обновить все «головные» проекты до последней предварительной версии пакета Uno.UI, а затем установить пакет nuget Microsoft.UI.Xaml в заголовок UWP. TwoPaneView реализован в пакетах Uno.UI и Microsoft.UI.Xaml (в том же пространстве имен) и условно скомпилирован. Вам не нужно объявлять указанное пространство имен c для 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 для тестирования), поэтому может помочь вам начать.

Надеюсь помогает.

...