首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >.NET Maui名称'InitializeComponent‘在当前上下文中不存在

.NET Maui名称'InitializeComponent‘在当前上下文中不存在
EN

Stack Overflow用户
提问于 2022-11-28 13:04:33
回答 2查看 66关注 0票数 0

我已经创建了一个ResourceDictionary文件,它附带了一个.cs文件。因此,在创建ResourceDictionary文件后,我得到一个错误,当前上下文中不存在名称'InitializeComponent‘。

下面是与上述文件关联的xaml文件。

我使用的是VS2022 17.5.0预览1.0

  1. 我已经将c#文件的构建操作设置为C#编译器
  2. ,我已经多次清理和重新构建了我的项目,并尝试删除bin和obj文件夹,但似乎没有什么工作是

的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-11-29 04:10:20

当我执行Project / rt-click / Add / NewItem / .Net Maui ResourceDictionary (XAML)时,这就是添加到.csproj中的内容:

代码语言:javascript
运行
复制
      <MauiXaml Update="Dictionary1.xaml">
        <Generator>MSBuild:Compile</Generator>
      </MauiXaml>

注意,Compile嵌套在MauiXaml元素中;它不是一个单独的项。

查看您的.csproj是否有两个单独的项,一个用于Dictionary1.xaml,另一个用于Dictionary1.xaml.cs

如果是,请将这两项替换为上面所示的合并项。

(对我来说,这是没有问题的。)

在你的例子中,.csproj没有显示MauiXaml BuildAction?

取代:

代码语言:javascript
运行
复制
<ItemGroup>
  <None Include="Themes\Light.xaml" />
</ItemGroup>

通过以下方式:

代码语言:javascript
运行
复制
<ItemGroup>
    <MauiXaml Update="Themes\Light.xaml">
        <Generator>MSBuild:Compile</Generator>
    </MauiXaml>
</ItemGroup>

我不知道是应该保留还是移除:

代码语言:javascript
运行
复制
<ItemGroup>
  <Folder Include="Themes\" />
</ItemGroup>

暂时把它留在里面。

票数 2
EN

Stack Overflow用户

发布于 2022-11-28 13:26:49

这听起来像一个类似的问题,经常困扰着Xamarin解决方案。我认为在Visual中显示文件时存在一个潜在的错误,或者解释文件的延迟。

若干备选方案:

solution.

  • Clean

  • 对所讨论的文件做了一个小的更改--即使添加或删除一个空格也可以,保存它并重新构建解决方案和rebuild.

  • Unload,并重新加载文件所属的项目。(右键单击“解决方案资源管理器”窗口中的项目,选择“卸载”,然后选择“加载”。

  • Xaml文件可能需要设置为其属性下的嵌入式资源作为其构建操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74601011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档