2013-09-16 4 views
0

Простой вопрос:OpenFileDialog вопрос в FSI

В F # Interactive, это не работает (она не показывает диалог):

open System.Windows.Forms 
let dlg = new OpenFileDialog() 
let res = dlg.ShowDialog() 

Этот код делает работу, после того, как я сначала сделать простой MessageBox:

open System.Windows.Forms 
MessageBox.Show("Now it works!") 
let dlg = new OpenFileDialog() 
let res = dlg.ShowDialog() 

Этот код также работает, после того, как первый, показывающий форму:

open System.Windows.Forms 
let frm = new Form() 
frm.Show() 
let dlg = new OpenFileDialog() 
let res = dlg.ShowDialog() 

Этот код, однако, не показывает каких-либо форм, даже не Messagebox:

open System.Windows.Forms 
let dlg = new OpenFileDialog() 
let res = dlg.ShowDialog() 
MessageBox.Show("Now it does not work...") 

кажется блоки OpenFileDialog на что-то, если он не имеет какой-либо другой формы тепло/нагрузка что-то первое, не знаю, что.

Любые идеи, что бы заставить OpenFileDialog работать сразу?

Использование Microsoft (R) F # 2.0 Интерактивное построить 4.0.40219.1

Спасибо, ГДж

+0

Работает отлично для меня в 3,0 и 3,1 FSI, возможно, в старой ошибке. – latkin

+0

Просто попробовал на VS2012/FSI 11.0.60610.1 (использовал 2010 из-за совместимости), но я получаю то же самое поведение, что и в 2010 году. – gjvdkamp

+1

Работает для меня на 11.0.60610.1. Обратите внимание, что окна всплывают * позади * VS UI, что не идеально, но они есть. – latkin

ответ

2

окна есть, они просто появляются за Visual Studio UI, так что легко не заметить их , Я не уверен, почему они не появляются на переднем плане.

Быстрый тест в FSI из командной строки (т. Е. Не размещенный VS) указывает, что в этом случае окна выходят на передний план.