1

質問: DataTable に Control 型の列がある場合、DataTable を XML にエクスポートする方法はありますか。コントロールをシリアル化できないというエラーが表示されます。さまざまな情報源からシリアル化された DataContacts の概念全体を読みましたが、見落としているはるかに簡単な解決策が手元にあるかもしれないとまだ考えています。

バックストーリー: 私が作成している C# アプリケーションがあります。アプリケーションのコントロールは異なるビュー間で再利用されます (つまり、1 つの「ビュー」をロードすると、アプリケーションはそれらのオブジェクトと同じオブジェクトを使用し、インスタンスのボタンのように異なるタスクを実行します。 「abutton」という名前のオブジェクトは、あるビューではフォームを送信するために使用できますが、別のビューではドキュメントを保存するために使用できます)。これをさらに複雑にするために、コントロールは一度使用すると無効になりますが、その特定の「ビュー」内でのみ、同じことを2回行うのを防ぎます。コントロールとそれらが有効かどうかは、ビューごとに作成する DataTable によって追跡されます。ビューが選択されると、アプリケーションはビューをロードし、そのビューの DataTable を使用して、無効になっているコントロールを判別します。

Control Type Column があり、そこにオブジェクトを保存すると、DataTable をトラバースしてその特定のビューのコントロールを有効/無効にするときに、はるかに簡単になります。Control 列を取り出して回避できることはわかっていますが、実際にはそうしません。 XML ファイルをエクスポートする簡単な方法があれば、それを行う必要があります。

4

0 に答える 0