Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将Xamarin.Forms XAML文件添加到FSharp项目中?_Xamarin.forms_F# - Fatal编程技术网

如何将Xamarin.Forms XAML文件添加到FSharp项目中?

如何将Xamarin.Forms XAML文件添加到FSharp项目中?,xamarin.forms,f#,Xamarin.forms,F#,如何将Xamarin.Forms XAML文件添加到FSharp项目中 默认情况下,XAML文件有C#代码隐藏。 我尝试将带有C代码的XAML文件移到F项目中。 然后我将文件扩展名改为“.fs”。 但是,我的尝试使VS2017崩溃。编辑 C#视图和F#视图模型 我猜是WPF和Xamarin,表单也会这么看。您可以在C#项目中定义所有视图,并将ViewModel逻辑放在可移植类库(PCL)中。当视图需要其DataContext时,您可以直接在C#项目中引用ViewModels。这样,它的行为将与使

如何将Xamarin.Forms XAML文件添加到FSharp项目中

默认情况下,XAML文件有C#代码隐藏。 我尝试将带有C代码的XAML文件移到F项目中。 然后我将文件扩展名改为“.fs”。 但是,我的尝试使VS2017崩溃。

编辑

C#视图和F#视图模型

我猜是WPF和Xamarin,表单也会这么看。您可以在C#项目中定义所有视图,并将ViewModel逻辑放在可移植类库(PCL)中。当视图需要其DataContext时,您可以直接在C#项目中引用ViewModels。这样,它的行为将与使用C#ViewModel时的行为相同

如果您想了解这方面的工作示例,我发现这正好说明了您可以做什么:

F#MVVM

如果您希望在同一个项目中拥有一个具有F#业务逻辑和XAML的整个应用程序,您可以下载以下扩展:。通过在指令中指向FSharp.ViewModule,您就可以了

将处理所有UI逻辑的视图模型。从继承视图模型 ViewModelBase

您还可以找到这种类型的工作示例

“代码隐藏”文件在F#(缺少部分类)中不存在,甚至在C#中也不存在


您可以使用
.LoadFromXaml
加载Xaml文件,并使用
.FindByNameThanks访问对象。但实际上我对将XAML文件添加到我的F#项目很感兴趣。@ScottNimrod请参考我的最新更新answer@ScottNimrod扩展的当前状态是什么?它对我有效吗?你在我的回购协议中有例子