成员名称不能与其在g.cs文件中的封闭类型相同

本文关键字:类型 文件 cs 不能 成员 | 更新日期: 2023-09-27 18:00:20

我已经在StackOverflow中搜索了这个问题的解决方案,但这次显然不同了。在我的Windows Phone应用程序中,当用户按下特定按钮时,应用程序应该将他重定向到特定的全景页面,所以我遵循以下方法:

http://blogs.msdn.com/b/aschapiro/archive/2012/07/21/navigating-directly-to-a-specific-screen-inside-a-panorama-or-pivot-page.aspx

但当我编译解决方案时,会出现以下错误:

"donazione":成员名称不能与其封闭类型相同

但是这个错误在编译过程中创建的donazione.xaml文件的.g.cs文件中,所以我查看了一下,错误是:

namespace Avis {

public partial class donazione : Microsoft.Phone.Controls.PhoneApplicationPage {
    internal System.Windows.Controls.Grid LayoutRoot;
    internal Microsoft.Phone.Controls.Panorama donazione; <-- the error is in this line
    private bool _contentLoaded;
    /// <summary>
    /// InitializeComponent
    ....

显然,试图修改这个文件并不能解决任何问题,所以这里是donazione.xaml文件导致了这个错误:

<phone:PhoneApplicationPage
x:Class="Avis.donazione"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait"  Orientation="Portrait"
shell:SystemTray.IsVisible="False">
<Grid x:Name="LayoutRoot">
    <controls:Panorama x:Name="donazione">
        <!--Panorama item one-->
        <controls:PanoramaItem Header="Il sangue">
            <Grid/>
        </controls:PanoramaItem>
        <!--Panorama item two-->
        <controls:PanoramaItem Header="Perché Donare">
            <Grid/>
        </controls:PanoramaItem>
        <controls:PanoramaItem Header="Chi può donare">
            <Grid/>
        </controls:PanoramaItem>
        <controls:PanoramaItem Header="Come donare">
            <Grid/>
        </controls:PanoramaItem>
        <controls:PanoramaItem Header="Tipi di donazione">
            <Grid/>
        </controls:PanoramaItem>
        <controls:PanoramaItem Header="FAQ">
            <Grid/>
        </controls:PanoramaItem>
    </controls:Panorama>
</Grid>

我面对的是如何操作的声明,但除了额外的元素外,最初的声明是相等的。

有人能帮我吗?谢谢

成员名称不能与其在g.cs文件中的封闭类型相同

你的类中不能有一个成员像你的类一样命名。

示例:

class Test
{
    int Test; // error
    int Test1; // OK
}

解决方案

  • donazione变量的名称更改为其他名称
  • 现在,由于它是一个.g.cs文件,您应该从设计视图属性窗口中执行此操作

如果是通过主情节提要,则很可能在视图和视图控制器中键入了相同的名称(由于主情节提要中的延迟,这是错误的)-从视图中删除该名称