2009-03-20 9 views
1

私は現在、プロジェクトにMicrosoft Visual C#Express Edition(SP1あり)を使用しています。一つの特定のフォームを編集するとき 私はフォームエディタでいくつかの奇妙なエラーを取得しています、メッセージを読み取りますWindowsフォームエディタのエラー

アセンブリ を入力し「System.Windows.Forms.Control」「のSystem.Windows.Forms、バージョン= 2.0.0.0、Culture =ニュートラル、 PublicKeyToken = b77a5c561934e089 'はシリアル化可能とマークされていません。

このフォームを保存しようとすると表示されます。ほとんどの場合、3〜5回連続して表示されますが、アプリケーションを終了するまで数秒ごとにノンストップでポップアップすることもあります。

私はいくつかのアプリケーション設定を追加しようとしたときに起動すると思いますが、再現できないようです。

エラーを見つけ出す方法については、ご理解いただきますようお願い申し上げます。ありがとうございます。


編集:フォームを保存すると、Visual C#Expressで[保存]ボタンをクリックするという意味です。私は手動でシリアル化しようとしていない、IDEでフォームを編集中にエラーがポップアップします。

編集:ここがスクリーンショットです - これはフォームを保存するとポップアップします。
http://img10.imageshack.us/my.php?image=notserializable.png

+0

私たちは自分で試してみるために、プロジェクトをファイル共有サービスに投稿するのはまだ遠くありませんでした。 –

答えて

1

.Designer.csの中で、Windowsフォームデザイナーはフォームを編集する際にシリアル化します。そのため、エラーをフォームの編集と見なすことがよくあります。

通常、デザイナーでUserControlまたはFormに由来するクラスを編集します。あなたのエラーは、それがコントロールをシリアル化しようとしていることを示しているようです。 MainFormの基本クラスをControlに変更しましたか?

また、MainForm.Designer.csファイルを手動で編集しましたか? .Designer.csファイルを直接編集しないことを強くお勧めします。そうすれば、Windowsフォームデザイナーのサポートを壊すのは簡単です。

+0

私のメインフォームの基本クラスは "フォーム"です。 私は多かれ少なかれ、MainForm.Designer.csファイルを誤って変更したことがあります。フォームを削除して手動で再作成して、それが何か変わるかどうかを調べることができます。他の可能性はありますか? – dasmaze

+0

独自のカスタムコントロールをこのフォームに埋め込み、これらのコントロールが構成時に例外を発生させると、Windowsフォームデザイナが破損する可能性があります。 これらのエラーを発見する方法の1つは、別のdevenvでdevenvをデバッグすることです!あなたのコードが間違っていると、あなたのコードが壊れてしまいます。 –

関連する問題