2013-04-26 44 views
3

最近我一直在使用TryFSharp.org,试图在业余时间学习F#。
http://fssnip.net/真的很好的例子,我一直在寻找灵感。Open System.Windows似乎在TryFSharp.org上失败

大量的UI例子有代码,如:

open System 
open System.Drawing 
open System.Windows.Forms 
... 
form.Show() 
// Run the application (in compiled application) 
Application.Run(form) 

不幸的是,当我加载到这些TryFSharp.org我上开System.Drawing中编译错误。

有什么我失踪,将使这些例子的工作? 一个例子FSharp脚本是在这里:

http://fssnip.net/p

如果你点击tryfsharp.org按钮,它会在浏览器中加载,但它会显示编译错误。

---编辑---

正如指出下面这不是预期System.Drawing中是在浏览器中可用。不过我也有问题,与命名空间System.Windows等

例如

开放System.Windows

失败,“命名空间‘窗口’没有定义”

试图在这两个IE10和Google Chrome。

--- END EDIT ---

+1

我认为问题的一部分是您使用TryFSharp的前一次迭代的脚本。看到这里:http://www.tryfsharp.org/Learn/data-visualization#extending-tryfsharp – mydogisbox 2013-04-26 14:50:54

+0

是的,这是有道理的。我试图找到旧版本的TryFSharp来查看我是否可以运行这些代码片段,但不幸的是我不认为它已经存在了。 我很新的StackOverflow。我可以将您的评论标记为接受的答案吗? – 2013-04-26 15:11:54

+0

我在回答结束时添加了那一点,所以你可以点击下面我的答案旁边的复选标记。 – mydogisbox 2013-04-26 15:59:16

回答

6

System.Drawing中,您可以访问GDI图形功能和System.Windows.Forms的,可以访问Windows窗体的功能。这些在浏览器中都不可用。

如果你想这样做,你需要从一个标准的.net编译器编译它,而不是在silverlight内运行的有限功能的编译器。

System.Windows.Controls for Silverlight

当我进入TryFSharp编辑器这一点,它不承认Windows命名空间出于某种原因,但是当我运行脚本,它执行就好了。

System.Windows.Drawing

System.Drawing命名空间提供访问GDI +基本图形 功能。

GDI

GDI可以在所有基于Windows的应用程序使用。

这意味着不是 Silverlight。

System.Windows.Forms

System.Windows.Forms命名空间包含用于创建充分利用在Microsoft Windows操作系统提供的系统 丰富的用户界面 功能 基于Windows的应用程序类。

并非以前迭代的TryFSharp中可用的所有功能都可用。查看当前访问Cavnas的方式here

+0

感谢您的回复。 绝对有其他例子,我发现特别提到在TryFSharp中运行。 比如有此链接在这里:http://ecfcae6434894ad79588106d501d2222.cloudapp.net/Tutorials/BuildingRichUI/Section1.html 可惜这无法编译开放System.Windows.Controls和其他一些命名空间。 – 2013-04-26 14:02:15

+0

@AndyB我刚试过,System.Windows.Controls加载对我来说很好。该名称空间_is_适用于Silverlight。表单和绘图不是。 – mydogisbox 2013-04-26 14:07:56

+0

这是我感兴趣的更多的System.Windows.Controls。我为我的问题挑选了一个坏例子。 我已经在铬和IE10中尝试过这个,但是打开System.Windows失败,并且没有定义“命名空间Windows”。 – 2013-04-26 14:20:25