2012-01-23 4 views
0

開始すると、すべてのアイコンがソースコントロール内のフォルダ内に配置され、すべてのWindowsフォームプロジェクトはそのフォルダ内のアイコンを.resxファイルから参照します。Skinnable Windows Forms App:異なるアイコンセットを処理する

異なるGUIを使用することに決めたので、同じ名前の2つのアイコンセットをそれぞれ独自のフォルダに作成して、別のアイコンセットを使用する場合はコピーして貼り付けます「メイン」フォルダ。

このアプローチの問題はソース管理です。私たちがコミットするときは、アイコンを変更した場合、アイコンを送信しないように注意する必要があります。これは非常に厄介です。

すべてのアイコンをソース管理下に保ちながら、これを避けるにはどうすればいいですか?これを処理する標準的な方法はありますか?

答えて

1

を示す設定フラグがあり、使用するアイコンのセットはです。次に、お互いのアイコンセットをストンプするのではなく、正しいものを指すようにワークスペースを構成するだけです。

VCストアに賢明なデフォルト値で設定ファイルのテンプレートを持って、VCでお互いに踏み設定ファイルを持っていることから維持し、その後実際設定ファイルは、VCシステムによって無視されているように。

たとえば、web.config.templateはVCシステムにチェックインされ、そこにシステム全体の設定が変更されます。各開発者(およびその他の種類のデプロイメント)は、固有の設定が必要なテンプレートファイルの独自のコピーを持ちます。

マスタ設定ファイルが変更されたことを知るのを助けるために、明示的なフラグを必要とするだけでなく、ローカルファイルに対して変更と自動差分があったことをユーザに通知するフックスクリプトマスターファイルを変更するときに設定されます。

+0

ハードコードされた '.resx'アイコンパスを回避するには、設定フラグに従って設定される環境変数を使用するように再定義して、特定のアイコンセットを指すようにしてください。設定フラグによって、 'app.config'のキー、環境変数などを意味しますか? –

+0

私は 'app.config'を好む傾向があります。なぜなら、それはもう少し発見可能で、自分のパスを乱雑にしないし、テキストファイルなのでもっと使いやすいですが、 。 – cdeszaq

関連する問題