什么是ビルドアクション?ビルドアクションは、ファイルがビルドおよび展開プロセスにどのように関連するかです。
Visual Studio2010のWindowsPhoneプロジェクトには、複数のビルドアクションがあります。それらの違いは何ですか?
*なし:このファイルはコンパイルに参加せず、出力されません。例:プロジェクト内のドキュメントファイル、readme.txt。
*コンパイル:コンパイルと出力に参加します。主にコードファイル。
※内容:編集には参加しませんが、出力されます。
*埋め込みリソース:このファイルは、メインプロジェクトによって生成されたDLLまたはexeに埋め込まれています。主にリソースファイル。
* ApplicationDefinition:Pageに似ていますが、Silverlightの起動ページ(デフォルトではApp.xaml)にのみ使用されます。
*ページ:Silverlighのすべてのusercontrol / page / childwindow xamlは「ページ」ビルドに属し、他のビルドアクションはコードビハインドファイルをxamlファイルに接続できません。
* CodeAnalysisDictionary:カスタムCodeAnalysis辞書。(http://blogs.msdn.com/b/codeanalysis/archive/2007/08/20/new-for-visual-studio-2008-custom-dictionaries.aspxを参照してください)
*リソース:AppName.g.resourcesという名前の共有(同様の設定を持つアセンブリ内のすべてのファイルによる)アセンブリマニフェストリソースにファイルを埋め込みます
* SplashScreen:Silverlightのウェルカム画面。
* DesignData:サンプルデータ型は偽の型として作成されます。サンプルデータ型が作成できない場合、またはサンプルデータ値を定義する読み取り専用プロパティがある場合は、このビルドアクションを使用します。
* DesignDataWithDesignTimeCreatableTypes:サンプルデータタイプは、サンプルデータファイルで定義されたタイプを使用して作成されます。サンプルデータ型がデフォルトの空のコンストラクターを使用して作成できる場合は、このビルドアクションを使用します。
* EntityDeploy:エンティティフレームワークに適用されます。
WPFイメージおよびその他のパスの問題
レオ
WPFでは、注意を払わないとパスに戸惑うでしょう。プロジェクトにインポートされた画像がバグディレクトリにコピーされないのはなぜですか?使用時にパスが見つからないのはなぜですか?私はインターネットを検索しましたが、まだ良い記事を見ていません。
パスの問題について最近心配した後、今日システムでWPFを学習していたときに、「Application WPF In Context」が誤って非常によく似た場所を見つけました。つまり、インポートされた各画像のタイプをSourceに設定したので、刺激を受けました。このせいでやってみました!
プロジェクトを開いたところ、その中の画像パスがコピーに設定されておらず、コピーされていなかったことがわかりました。これがプロジェクトのバグディレクトリに自動的にコピーされないのも不思議ではありません。
見下ろしてみると、ビルドアクションにはさまざまなオプションがあることがわかったので、それを確認しました。タイプがたくさんあり、オプションのタイプの1つが埋め込みリソースであることがわかりました。ハハ、赤ちゃんのことを考えました。すべてのプロジェクトの写真とテンプレートが再設定されました...効果は良好です。問題を知っているので、インターネットで確認し、ビルドアクションの使用法を具体的に尋ねました:ブログガーデンで私は記事を見つけました、真ん中の部分を抽出してください:
なし:このファイルはコンパイルに参加せず、出力されません。例:プロジェクト内のドキュメントファイル、readme.txt。
*コンパイル:コンパイルと出力に参加します。主にコードファイル。
※内容:編集には参加しませんが、出力されます。
*埋め込みリソース:このファイルは、メインプロジェクトによって生成されたDLLまたはexeに埋め込まれています。主にリソースファイル。
* ApplicationDefinition:Pageに似ていますが、Silverlightの起動ページ(デフォルトではApp.xaml)にのみ使用されます。
*ページ:Silverlighのすべてのusercontrol / page / childwindow xamlは「ページ」ビルドに属し、他のビルドアクションはコードビハインドファイルをxamlファイルに接続できません。
* CodeAnalysisDictionary:カスタムCodeAnalysis辞書。(http://blogs.msdn.com/b/codeanalysis/archive/2007/08/20/new-for-visual-studio-2008-custom-dictionaries.aspxを参照してください)
*リソース:AppName.g.resourcesという名前の共有(同様の設定を持つアセンブリ内のすべてのファイルによる)アセンブリマニフェストリソースにファイルを埋め込みます
* SplashScreen:Silverlightのウェルカム画面。
* DesignData:サンプルデータ型は偽の型として作成されます。サンプルデータ型が作成できない場合、またはサンプルデータ値を定義する読み取り専用プロパティがある場合は、このビルドアクションを使用します。
* DesignDataWithDesignTimeCreatableTypes:サンプルデータタイプは、サンプルデータファイルで定義されたタイプを使用して作成されます。サンプルデータ型がデフォルトの空のコンストラクターを使用して作成できる場合は、このビルドアクションを使用します。
* EntityDeploy:エンティティフレームワークに適用されます。
オリジナル:http://www.cnblogs.com/Tealcwu/archive/2010/07/12/1775904.html
これを読むと、すでに理解していることがわかります。実際、注意が必要な別の場所、つまり、使用するときに前後のパスがあります。私の原則は、昨日の前日に自分で生成したパスを使用することです。
メソッドは、ページ上で画像をドラッグし、組み込みのVSを使用してそのプロパティを設定するだけです。
以下に示すようにパスを取得します。
次に、Xamlのすべてのパスを今すぐパスに設定してから、画像の名前またはリソースの名前を変更します。
「/xxx.xxx.xxx;component/bin/Debug/Images/xxx.png」。。。では、このパスを使用してこれらのイメージソースを設定すると、エラーを防ぐことができます。
バックグラウンドで注意してください。つまり、new BitmapImage(new Uri( "Resources / Images / xxx.jpg"、UriKind.Relative)のように、最初に「/」を使用することはできません。
だからあなたはそれを得ることができます。「/」を追加すると、VSの下のパスは正しいかもしれませんが、公開後に異常エラーが発生し、パスが見つかりません。
コンパイルする必要のない他の同様のリソースファイルについては、この方法で設定できます。
ついに終わった。。。。