我正在学习F#的过程中,发现使用FsXaml的FsEmptyWindowsApp对于将f#系统的UI组合在一起非常有用。我似乎无法克服的一个问题是,从启动MainWindow.xaml中打开一个新窗口。我创建了一个ChildWindow.xaml并在FsXaml中使用XAML提供程序创建了一个类型,但是当我

type MainView = XAML<"MainWindow.xaml", true>
type ChildWindow = XAML<"ChildWindow.xaml",true>

type MainViewModel() as self =
inherit ViewModelBase()

    ...

    member x.NewChildWindowCommand =
        new FunCommand ((fun action ->
                        let cw = ChildWindow()
                        cw.Root.Activate() |> ignore
                       ),
                        (fun canExecute -> true))


当我运行“无法找到资源ChildWindow.xaml”的命令时,总是出现错误,我将它放在MainWindow.xaml上方的项目中,后面带有自己的代码,并且始终得到该错误,无法找到资源错误。

我尝试使用手动加载xaml

Application.LoadComponent(new Uri("/<asseblyname>;component;/ChildWindow.xaml",UriKind.Relative))


但是关于相同的错误再次找不到资源...

我应该如何在FsEmptyWindowsApp中使用XAML类型提供程序(FxXaml)来打开新窗口的任何帮助和解释,将不胜感激。或者,如果有人知道如何使用FsXaml进行页面导航,那将非常有用。我已经下载了演示,但其中似乎没有涵盖多页/窗口演示

最佳答案

我发现了这个问题,在新创建的xaml文件上,您需要进入属性并将设置操作设置为资源...现在一切都按预期进行,希望我能尽快解决这个问题

关于.net - F#和FsXaml用于打开新的xaml窗口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28281348/

10-10 21:32