UWP UserControl的大小正确,但未呈现

时间:2019-10-28 18:14:25

标签: c# .net uwp user-controls uwp-xaml

对于这个问题的答案很简单,我深表歉意,但是我才刚刚开始学习UWP,并且真的无法独自解决。

主页上的UserControl中包含一个名为ClockWidget的{​​{1}}。运行应用程序时,控件(仅包含Canvas)具有正确的大小,但似乎无法呈现文本。

MainPage.xaml

TextBlock

ClockWidget.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>

奇怪的是,在<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消失了。 MainPage.xaml

1 个答案:

答案 0 :(得分:0)

因此,它必须归结为一个难以置信的愚蠢的错误。在我的ClockWidget.xaml.cs后台代码中,我改写了默认构造函数,但不小心删除了InitializeComponent()调用。显然,这些组件从未初始化过……

谢谢大家的帮助和支持!