TextBlock导致InitializeComponent()错误

时间:2015-04-16 19:42:28

标签: c# visual-studio xaml

我在MainPage.xaml中有这个XAML代码,它创建行和列定义以及TextBlock

<Page
    x:Class="App2.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App2"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <Grid x:Name="layoutGrid" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

        <Grid.RowDefinitions>
            <RowDefinition Height="140"/>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*"/>
            <ColumnDefinition Width="2*"/>
            <ColumnDefinition Width="3*"/>
        </Grid.ColumnDefinitions>

        <TextBlock Text="TEST" 
                   Grid.Row="1" 
                   Grid.Column="1" 
                   Height="23" 
                   HorizontalAlignment="Right" 
                   Margin="0,45,70,0" 
                   x:Name="Test TextBlock"/>

    </Grid>

</Page>

如果TextBlock存在,我的MainPage.xaml.cs

会出错

.xaml.cs errors

我无法弄清楚这段代码有什么问题。如果我在.xaml页面上注释掉TextBlock,则错误就会消失。 Here是完整的代码,其中的屏幕截图显示了我遇到的问题。

1 个答案:

答案 0 :(得分:4)

x:Name="Test TextBlock"

x:Name定义该对象的变量名称。 Test TextBlock不是有效的标识符。使用TestTextBlock。此外,您可以查看InitializeComponent,或阅读您的错误消息。您的XAML文件中的错误字面上说(看看蓝色波浪形):

  

'Test TextBlock'不是属性'Name'的有效值