我已经在 StackOverflow 中搜索过这个问题的解决方案,但显然这次有所不同。 在我的 Windows Phone 应用程序中,当用户按下特定按钮时,应用程序应将他重定向到特定的全景页面,因此我遵循了以下方法:
但是当我编译解决方案时出现这个错误:
'donazione': member names cannot be the same as their enclosing type
但是这个错误是在编译时创建的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>
我将其与操作方法进行了对比,但除了附加元素外,初始声明是相同的。
谁能帮帮我? 谢谢。
最佳答案
您的类(class)中不能有成员的名字与您的类(class)相同。
示例:
class Test
{
int Test; // error
int Test1; // OK
}
解决方案:
- 将
donazione
变量的名称更改为其他名称。 - 既然它是一个 .g.cs 文件,您应该从设计 View 属性窗口执行此操作
关于c# - 成员名称不能与其在 g.cs 文件中的封闭类型相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23326569/