(在深入了解之前,我想先介绍一下背景:我正在尝试加载一个WPF框架,其中包含我作为资源包含在项目中的.html文件的内容。)
我创建了一个新的WPF应用程序;我向项目中添加了一个名为“foofiles”的新文件夹,并添加了一些文件(page1.foo和page2.foo)到该文件夹中。
对于每个新添加的.foo文件,我右键单击它,进入“属性”,将构建操作设置为“资源”,并将输出目录设置为“始终复制”。
我希望能够在XAML中访问这些文件:
我创建了一个新的WPF应用程序;我向项目中添加了一个名为“foofiles”的新文件夹,并添加了一些文件(page1.foo和page2.foo)到该文件夹中。
对于每个新添加的.foo文件,我右键单击它,进入“属性”,将构建操作设置为“资源”,并将输出目录设置为“始终复制”。
我希望能够在XAML中访问这些文件:
<Frame x:Name="bar" Source="/foofiles/page1.foo"/>
而在过程式代码中:
private void someFunc()
{
bar.Source = new Uri("/foofiles/page1.foo");
}
但我就是想不明白为什么这个不起作用——我收到了一个“无法确定URI格式”的错误信息。
在代码后台,我尝试做了这个:
private void someFunc()
{
bar.Source = new Uri("pack://application:,,,/foofiles/page1.foo");
}
代码没有抛出异常,但我的主窗口崩溃了。
按照我的思路,如果我在项目中添加任何类型的文件,并将其标记为“资源”(在“生成操作”中),那么我应该能够像上面的示例一样使用该文件。此外,我想这样使用该文件:
private void someOtherFunc()
{
System.IO.StreamReader reader = new System.IO.StreamReader("/foofiles/page1.foo");
string bar = reader.ReadToEnd();
}
任何帮助都将不胜感激...提前致谢!