在Visual Studio解决方案中重新链接Xaml和代码隐藏

时间:2017-06-03 10:02:18

标签: c# xaml visual-studio-2017

我有XAML文件说SomePage.xaml

我在SomePageCardsPage课程的课程后面重构了代码,从而犯了一个错误。

现在XAML文件不再与后面的代码链接。

Separate File

如何再次将这些文件链接在一起?

3 个答案:

答案 0 :(得分:4)

如果您打开包含CardsPage的项目文件,则可以将它们重新链接在一起。

你应该有2个部分,其中一个应该是这样的:

<Page Include="CardsPage.xaml">
  <Generator>MSBuild:Compile</Generator>
  <SubType>Designer</SubType>
</Page>

其他部分应如下所示:

<Compile Include="CardsPage.xaml.cs">
  <DependentUpon>CardsPage.xaml</DependentUpon>
</Compile>

DependentUpon很重要,它会将文件嵌套在xaml下面的IDE中 注意:在屏幕截图中,CardsPage看起来像是重命名为CardsPage.cs,我确保将其重命名为CardsPage.xaml.cs。

希望有所帮助,遗憾的是,除了摆弄项目文件以使其再次运作之外,我不知道任何其他方式。

答案 1 :(得分:0)

当我使用XAML重构背后的代码(例如重命名)时,我遇到了一些问题,并且发现了一个小的扩展以将文件“重新链接”在一起。

https://marketplace.visualstudio.com/items?itemName=MadsKristensen.FileNesting

比修改csproj和危险程度较小要容易。

请参见下面的示例

第1步

第2步

[[2]

结果

答案 2 :(得分:0)

如果您使用的是Xamarin表单,请尝试编辑Xamarin项目的.xaml文件位于同一目录中的“ .projitems”文件,.cs文件和.xaml文件之间会有这种关联

<Compile Include="$(MSBuildThisFileDirectory)MyPage.xaml.cs">
  <DependentUpon>MyPage.xaml</DependentUpon>
  <SubType>Code</SubType>
</Compile>


<ItemGroup>
 <EmbeddedResource Include="$(MSBuildThisFileDirectory)MyPage.xaml">
  <SubType>Designer</SubType>
   <Generator>MSBuild:Compile</Generator>
 </EmbeddedResource>
</ItemGroup>

<Compile Update="C:\Projects\MyPage.xaml.cs">
  <DependentUpon>MyPage.xaml</DependentUpon>
</Compile>