嗨,我目前正在构建一个闪存卡生产力应用程序,该应用程序具有我所做的用户控件。在进行控制时,我意识到它太小而无法在手机显示屏上很好地显示或呈现。因此,我随后开始通过增加控件的宽度和高度以及用户控件中包含的所有控件的文本的大小来扩大用户控件。只有当我尝试运行该控件时,我才得到此例外:
SuperCards.exe中发生类型为“ Windows.UI.Xaml.Markup.XamlParseException”的异常,但未在用户代码中处理

WinRT信息:无法从文本'%0'创建'%1'。 [线:12位:48]

附加信息:找不到与此错误代码关联的文本。

这是用户控件的xaml代码:

<UserControl
x:Class="SuperCards.CardPackItemListView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:SuperCards"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="125"
d:DesignWidth="400" >
    <Border CornerRadius="2" BorderThickness="1" BorderBrush="White">
        <Grid Background="White" Height="Auto" Width=" Auto">
            <TextBlock x:Name="cardPackItemNameDisplay" HorizontalAlignment="Left"      VerticalAlignment="Top" Width="Auto" Height="Auto" Text="(Sample) Periodic Table" Foreground="Gray" Margin="9,9,0,0" FontSize="30" />
            <Grid HorizontalAlignment="Stretch" VerticalAlignment="Bottom" Margin="9,30,9,9" Width="Auto" Height="9" Background="gray" >
                 <Rectangle HorizontalAlignment="Left" VerticalAlignment="Stretch" Fill="Red" Width="46"/>
            </Grid>
            <TextBlock HorizontalAlignment="Right" VerticalAlignment="Top" Text="36" Foreground="Gray" Margin="0,9,9,0" FontSize="30"/>
        </Grid>
    </Border>




视觉工作室在这里通知,该异常未在用户控件的构造函数中的初始化组件处处理。

最佳答案

第12行中的以下属性与错误消息中的行相对应;删除引号中的前导空格:

Width=" Auto"


如果WinRT中的颜色名称区分大小写,这也可能导致问题。最好在G中将Gray大写,以防万一:

Background="gray"

关于c# - 扩大控制,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27297468/

10-11 23:07