none
如何在silverlight4中建立同一个命名空间的文件夹? RRS feed

  • 问题

  • 建立一个导航项目的SILVERLIGHT,发现其中有Views和Assets两个文件夹,它们和MainPage都是同一个命名空间的。而我再在项目中新建一个文件夹却发现,不是同一个命名空间的,需要引用才可以用。为什么会这样呢?关键是如何建一个如Views和Assets两个文件夹一样的文件夹,比如MyNewFlod,也在同一个命名空间之下?


    菜爷
    2011年3月3日 2:37

答案

  • 因为那些文件是VS自动生成的。你可以用记事本打开项目里面那个*.csproj这个文件,它是xml格式。

    这一句说明了*.xaml文件的位置

     <Page Include="UserControls\CollapsiblePanel.xaml">
          <Generator>MSBuild:Compile</Generator>
          <SubType>Designer</SubType>
        </Page>

    这一句说明了需要编译用的*.cs文件的位置

    <Compile Include="UserControls\CollapsiblePanel.xaml.cs">
          <DependentUpon>CollapsiblePanel.xaml</DependentUpon>
        </Compile>

    Views和Assets两个文件夹是VS自动生成的,如果你在这两个文件夹下加入新的类,VS会自动把命名空间修改为和MainPage相同的。


    努力!完成了js解析器,还差一个svg插件,一个绘图程序,做好自己,呵呵~!
    • 已标记为答案 菜爷 2011年3月5日 15:34
    2011年3月5日 12:27
    版主

全部回复

  • 是不是MS夹私自己的模板,文件夹就在同一个命名空间之中,别人建一个文件夹其命名空间就是另一个子命名空间了?


    菜爷
    2011年3月3日 2:45
  • 因为那些文件是VS自动生成的。你可以用记事本打开项目里面那个*.csproj这个文件,它是xml格式。

    这一句说明了*.xaml文件的位置

     <Page Include="UserControls\CollapsiblePanel.xaml">
          <Generator>MSBuild:Compile</Generator>
          <SubType>Designer</SubType>
        </Page>

    这一句说明了需要编译用的*.cs文件的位置

    <Compile Include="UserControls\CollapsiblePanel.xaml.cs">
          <DependentUpon>CollapsiblePanel.xaml</DependentUpon>
        </Compile>

    Views和Assets两个文件夹是VS自动生成的,如果你在这两个文件夹下加入新的类,VS会自动把命名空间修改为和MainPage相同的。


    努力!完成了js解析器,还差一个svg插件,一个绘图程序,做好自己,呵呵~!
    • 已标记为答案 菜爷 2011年3月5日 15:34
    2011年3月5日 12:27
    版主
  • 哈哈,原来MS真的夹私了。我都想了好久,怎么MS自带的文件夹却是和MainPage是同一个命名空间的,而额新建一个文件夹却不是。害咱们多写代码。怎么也给咱一个比较简单明确的选择吧。
    菜爷
    2011年3月5日 15:42