当参数是字符串时,如何获取可能的字符串列表

时间:2017-05-23 13:03:33

标签: c# .net

为了以编程方式将文件包含到项目中,我使用此答案中提供的方法https://stackoverflow.com/a/23537007/1317323

现在我需要更进一步,将xaml文件和xaml.cs文件添加到我的项目中。

我需要知道方法AddItem()中接受的字符串是什么,以便以正确的方式包含这两个文件。像

这样的东西
p.AddItem("Page", "so.xaml");
// or
p.AddItem("Xaml", so.xaml");

当我使用经典的视觉工作室"右击/添加新项目"方式,我在csproj文件中得到这个

<ItemGroup>
  <Page Include="example.xaml">
    <SubType>Designer</SubType>
    <Generator>MSBuild:Compile</Generator>
  </Page>
</ItemGroup>
<Compile Include="example.xaml.cs">
  <DependentUpon>example.xaml</DependentUpon>
</Compile>

我没有运气就读过msdn。

我正在寻找一个表,它会给出一个给定项类型的第一个参数或构造这样一个表的方法。

1 个答案:

答案 0 :(得分:0)

我能够使用Microsoft的另一个命名空间来完成它。

解决方案基于此one

而不是用

操纵我的解决方案
 Microsoft.Build.Evaluation.Project

我用

Microsoft.VisualStudio.Shell.Interop

现在我操纵了

EnvDTE.Project

我可以使用

_currentProject.ProjectItems.AddFromFile(path);

如果我使用同名的xaml和xaml.cs文件执行两次,则会自动嵌套。