UWP UserControl имеет правильный размер, но не отображается - PullRequest
0 голосов
/ 28 октября 2019

Я прошу прощения, если ответ на этот вопрос прост, но я только начинаю изучать UWP и действительно не могу найти решение самостоятельно.

У меня есть UserControl с именем ClockWidget включены в Canvas на моей главной странице. При запуске приложения элемент управления (содержащий только TextBlock) имеет правильный размер, но, похоже, текст не отображается.

MainPage.xaml

<Page
    x:Class="SmartMirror.IOT.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"
    xmlns:widgets="using:SmartMirror.IOT.Widgets"
    mc:Ignorable="d"
    Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

    <Canvas x:Name="Canvas">
        <widgets:ClockWidget Width="500" Height="150" />
    </Canvas>
</Page>

ClockWidget.xaml

<UserControl
    x:Class="SmartMirror.IOT.Widgets.ClockWidget"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:SmartMirror.IOT.Widgets"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:widgetData="using:SmartMirror.Shared.Model.WidgetData"
    mc:Ignorable="d">
    <TextBlock Text="Hello World" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" />
</UserControl>

Как ни странно, в предварительном просмотре ClockWidget.xaml все хорошо, но однажды внутри MainPage.xaml, он «исчезает».


Редактировать

Я добавил несколько скриншотов, чтобы прояснить проблему.

Как видите, ClockWidget.xamlсам по себе, кажется, работает нормально, текст появляется. ClockWidget.xaml

Однако, как только я вставлю его в MainPage.xaml, он не появится. Я выбрал ClockWidget на этом снимке экрана, так что, как видите, размер все еще правильный, но TextView исчез. MainPage.xaml

1 Ответ

0 голосов
/ 30 октября 2019

Итак, как это и должно было произойти, невероятно глупая ошибка. Внутри кода ClockWidget.xaml.cs я переписал конструктор по умолчанию, но случайно удалил вызов InitializeComponent(). Очевидно, что компоненты никогда не инициализировались ...

Спасибо всем за помощь и поддержку!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...