0

onload イベントに関するエラーが表示されます。このエラーは、コントロールをフォームに追加し、フォームをデザイン ビューで表示しようとした場合にのみ表示されます。コントロール自体をデザイン ビューで見ると問題ありません。エラーは

Object reference not set to an instance of an object.

スタックトレース

at BHCS.ECC.PhysDoc.UI.UserControls.TemplateBaseControl.SetControlVisibility() in C:\TFS10\ECC\Dev\BHCS\ECC\BHCS.ECC\BHCS.ECC\PhysDoc\UI\TemplateBaseControl.cs:line 98
at BHCS.ECC.PhysDoc.UI.UserControls.TemplateBaseControl.ucTemplateBase_Load(Object sender, EventArgs e) in C:\TFS10\ECC\Dev\BHCS\ECC\BHCS.ECC\BHCS.ECC\PhysDoc\UI\TemplateBaseControl.cs:line 476
at System.EventHandler.Invoke(Object sender, EventArgs e)
at System.Windows.Forms.UserControl.OnLoad(EventArgs e)
at DevExpress.XtraEditors.XtraUserControl.OnLoad(EventArgs e)
at BHCS.ECC.PhysDoc.UI.UserControls.TemplateBaseControl.OnLoad(EventArgs e) in C:\TFS10\ECC\Dev\BHCS\ECC\BHCS.ECC\BHCS.ECC\PhysDoc\UI\TemplateBaseControl.cs:line 1029
at System.Windows.Forms.UserControl.OnCreateControl()
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
at System.Windows.Forms.Control.CreateControl()
at System.Windows.Forms.Control.ControlCollection.Add(Control value)
at System.Windows.Forms.Form.ControlCollection.Add(Control value)
at System.Windows.Forms.Design.ControlDesigner.DesignerControlCollection.Add(Control c) 

設計時にオブジェクトを使用しても意味がありません。フォームでコードを実行しているのはなぜですか? フォーム デザイン ビューでエラーを引き起こすコントロールで許可されていないものは何ですか?

4

1 に答える 1

1

ここでエラーがスローされます:

BHCS.ECC.PhysDoc.UI.UserControls.TemplateBaseControl.SetControlVisibility() in C:\TFS10\ECC\Dev\BHCS\ECC\BHCS.ECC\BHCS.ECC\PhysDoc\UI\TemplateBaseControl.cs:line 98

なぜ取得しているのかを判断するには、その行を確認する必要がありますObject reference not set to an instance of an object.

フォーム デザイナーを表示しようとしたときにデザイン時にこのエラーが発生する理由は、VS がカスタム コントロールを実行して表示する必要があるためです。カスタム コントロールのコードにエラーがある場合、VS は何も表示できないため、エラーが報告されます。

于 2012-10-30T18:44:52.093 に答える