6

次のように定義されたWPFプロジェクトがあります。

MyApp.sln
  MyAppWPF
  MyApp.Domain

MyAppWPFプロジェクトのxamlファイルの1つで、MyApp.Domainプロジェクトで定義されたクラスを参照しようとしています。MyAppWPFにMyApp.Domainへのプロジェクト参照があります。私は次のような参照を作成しようとしています:

<ウィンドウx:Class = "MyAppWPF.Window1"
    xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local = "clr-namespace:MyApp.Domain; assembly = MyApp.Domain"
    Title = "Window1" Height = "305" Width = "485">
    <Window.Resources>
       <local:MyClass x:Key = "mine" />
    </Window.Resources>
</ Window>

アセンブリが見つからないというエラーが表示されますが、コードビハインドで参照するクラスのインスタンスを作成できるため、正しく参照されていることがわかります。

どうすればよいですか?厳密な名前が必要ですか、それともプロジェクト参照を使用する代わりにdllを直接参照しますか?

4

5 に答える 5

2

確認してください

  1. MyClassの完全修飾名はMyApp.Domain.MyClassです。
  2. MyClassには、XAMLがインスタンス化できるように、デフォルトのパブリックコンストラクター(パラメーターなし)があります。
于 2008-10-19T18:13:20.503 に答える
1

何か助けになりますか?

Visual Studio 2008(RTM)WPFデザイナーがアセンブリまたは依存関係を読み込めませんでした

Visual Studio2008を使用していると仮定します。VisualStudio2005を使用している場合、これは「Visual Studio 2005 Extensions forWPFandWCF」に含まれているコードネーム「Cider」のXAMLデザイナーの既知の問題です。

于 2008-10-20T12:31:44.890 に答える
1

assembly=MyApp.DomainLoose XAML を動的にコンパイルする場合にのみ、を配置する必要があります。

XAML を最初に 1 回ビルドするだけの場合は、そのトークンを除外してxmlns:local="clr-namespace:MyApp.Domain"代わりに言うだけです。

于 2015-02-26T23:10:52.520 に答える