问题描述
冒着击败一匹死马的风险,我想在使用Elmish.WPF的初始设置中清楚一点。
我的意图是基本上拥有两个项目:
尝试了大多数项目类型选项(Visual Studio 2019)之后,我选择了:控制台应用程序(.NET Framework)用于C#项目的C#。
这创建了C#项目,该项目默认为:目标框架:.NET Framework 4.7.2输出类型:控制台应用程序。这也创建了一个“ program.cs”文件。
接下来,在C#控制台应用程序中使用ADD-> New Item不会显示
接下来,使用以下代码创建F#模型项目:库(.NET Framework) F#Windows库。这创建了一个项目,默认情况下为:目标框架:.NET Framework 4.7.2输出类型:类库。在F#类库中,添加了一个程序– FrontOffice.fs,
/// This is the application's entry point. It hands things off to Elmish.WPF
let entryPoint (mainWindow: Window) =
Program.mkSimpleWpf init update bindings
|> Program.runWindowWithConfig
{ ElmConfig.Default with LogTrace = true; Measure = true; MeasureLimitMs = 1 }
mainWindow
最后,program.cs更改为:
public class Program
{
[STAThread]
public static void Main(string[] args)
{
Application app = new Application();
Window mainWindow = new MainWindow();
Models.FrontOffice.entryPoint(mainWindow);
}
}
这里的重点是: Program.mkSimpleWpf。
为什么所有麻烦?我想使用完整的WPF / C#/ XAML好东西(例如主题,自定义控件等),但是我不确定在F#中直接编译XAML可以做到这一点。我希望能够在XAML中使用F#数据类型,因此C#项目需要对F#模块的引用,因此在C#中创建窗口并将引用传递给F#模块entryPoint似乎更容易,例如以上。
问题:
感谢您对这些要点进行澄清。 TIA
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)