2
    Dim details As New frmDetails(ID, JobID, True)
    details.ShowDialog()

フォームが点滅して開き、すぐに閉じます。ShowDialog ( ) ではなくShow ()を使用すると、開いたままになり、問題なく表示されます。ここに私がチェックしたいくつかのことがあります:

  • Breaking in FormClosingショーのみ

System.Windows.Forms.Form.OnFormClosing System.Windows.Forms.Form.CheckCloseDialog System.Windows.Forms.Application.ThreadContext.System.Windows.Forms.UnsafeNativeMethods.IMsoComponent.FContinueMessageLoop System.Windows.Forms.Application.ComponentManager.System .Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop
System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner System.Windows.Forms.Application.ThreadContext.RunMessageLoop System.Windows.Forms.Application.RunDialog

System.Windows.Forms.Form.ShowDialog

ShowDialogFormClosingの間。

  • CloseReasonは「なし」
  • Loadは、 VisibleChangedと同様に最後まで実行されます (ただし、Activatedは呼び出されません)。
  • スローされている例外の兆候はありません。
  • Intellitrace は、何が起こっているかを示しません。
  • フォームが閉じた後、DialogResultは「キャンセル」になります (フォームまたはその Designer に DialogResult への参照はありません)。
  • 私は明示的なスレッド化を行っていません

何が起こっているか、またはどのように調べるかについての提案をいただければ幸いです。

ありがとう。

4

4 に答える 4

2

まあ、これはおそらく誰にも役に立たないでしょうが、これが私が問題を解決した方法です:

Loadメソッドに次のような行がありました

Me.Text = ""

特に値が後で再び設定されるため、そこで何が行われていたのかわかりません(これは私のコードではありません、よろしくお願いします)が、その行を削除すると、フォームが不思議に閉じるのを防ぎました。図に行きます。

于 2012-11-14T17:19:39.203 に答える