2011-09-23 61 views
5

私たちのアプリケーション全体で使用される多くのコントロールを含むコントロールプロジェクトがあります。これらのコントロールには多くの古いプロパティと多くの冗長プロパティがあり、ほとんどのプロパティには属性が指定されていません(特にDefaultValue()など)。WinFormsに.designer.csファイルを再生成させる

クリーンアップの一環として、プロパティに属性を追加して、冗長なものを削除しようとしています。

ここでは、生成されたコードをwinformsデザイナー(xxxxxx.designer.csおよびxxxxxx.designer.vbファイル)から削除する方法を説明します。いくつかのプロパティはストレートな削除で、GrepとSedを使用して問題の行を削除することができましたが、Visual Studio(または何か)でファイルを再生成する方法を探しています。

フォームが100種類あるため、手動でそれぞれを開いて変更することは不可能です。

これを行う方法を知っている人はいますか?

編集:

を明確にするために、私はすぐにプロパティを削除するのではなく、それらを書くしないように、設計者に伝えるために、それらにDesignerSerializationVisibity()属性を適用するために何を意味しますか。その後、すべてのデザイナーファイルを更新したら、そのプロパティーを削除することができます。

関連項目:

Automatic regenerate designer files

答えて

4

ない可能性、あなたはそれはあなたが削除または名前を変更したプロパティのプロパティの割り当てが含まれている場合、設計者はのInitializeComponent()を解析することができません。それはコードを再生成する前にそれを解析する必要があります。

唯一の実際のアプローチは、[DesignerSerializationVisibility]属性を古いプロパティに適用してプロパティの割り当てをもう書き込まないようにすることです。次に、各フォームを読み込んで、簡単な編集を行って、プロパティの割り当てをしなくてもInitializeComponent()を再生成できるようにします。その後、それらを削除することができます。メソッドを直接編集する方が早い場合があります。

+0

私は、プロパティを削除するのではなく、デザイナーにそれらを書き込まないように指示するために 'Browsable(False)'属性を適用することを意味しました。その後、すべてのデザイナーファイルを更新したら、そのプロパティーを削除することができます。 – Pondidum

+0

いいえ、[ブラウズ可能]は[プロパティ]ウィンドウでの表示のみに影響します。あなたは本当に[DesignerSerializationVisibity]が書くことを避けたいと思います。 –

+0

ありがとう、これを反映する質問が更新されました。 – Pondidum

関連する問題