UWP用户控件和默认值

问题描述

我正在尝试首次创建UWP用户控件。我想要做的一件非常基本的事情是根据用户控件的内容在设计时和运行时自动设置宽度和高度。理论上很简单,但是每当我构建控件并将其放在窗体上时,它都具有此认的“ Width = 100”值。与高度相同。

这是我到目前为止拥有的简单XAML代码

    <UserControl
    x:Class="JTE.JTreeItem"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:JTE"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    Width="Auto"
    d:DesignHeight="300"
    d:DesignWidth="400">

    <Grid>
        <TextBlock HorizontalAlignment="Left" Margin="10,32,0" Text="TextBlock" textwrapping="Wrap" VerticalAlignment="Top"/>

    </Grid>
</UserControl>

但是当我将控件从工具箱拖到页面上时,这就是我得到的:

<local:JTreeItem HorizontalAlignment="Left" Height="100" Margin="247,305,0" VerticalAlignment="Top" Width="100"/>

认情况下,宽度和高度均为100。但为什么?我该如何更改?这似乎很简单,但添加了:

Width="Auto"

不能解决这个问题。删除它不能解决问题。例如,如果我这样做,我放在此处的任何值都会被忽略:

Width="199"

什么都没发生。我得到的Width和Height都具有相同的100认值。

为什么这么不直观? XAML中似乎没有语法错误,那么在那里发生了什么?

我正在使用Visual Studio Community 2019。

如果您有任何帮助,我将不胜感激。提前谢谢!!!

编辑:为清楚起见添加了一些内容

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)