複数のプロジェクトで構成されるVS 2015で構築されたWPFソリューションがあります。突然、デザインモードで次のような警告が表示されるようになりました。
タイプ「ウィンドウ」は直接コンテンツをサポートしていません。
一部のコントロールが直接コンテンツをサポートしていないことは理解していますが、System.Windows.Window
する必要があります。 UserControl
でも同じ警告が表示されますが、私が知る限り、通常直接コンテンツをサポートする他のコントロールもあります。
すべてがコンパイルされて正常に実行されますが、XAML全体に青い下線が表示されるのは面倒です。他の誰かがこれに遭遇しましたか?
以下はスクリーンショットです。
必ずSystem.Xamlを参照してください。プロジェクトをクリーンにして再構築します。 VS 2015 Update 1で動作します。
私にとって、このエラーはクラスライブラリプロジェクトにWPFウィンドウを追加したために発生していました。
何らかの理由(私には不明)で、プロジェクトが作成されていない場合、Visual Studioは[Add New Item ...]ダイアログボックスからWPF Windowテンプレートを選択するオプションを提供しません。 WPFアプリケーションとして。代わりに、WPFユーザーコントロールを追加するオプションのみを提供します。そのため、新しいアイテムのユーザーコントロールテンプレートを選択し、ソースコードを編集してXAMLをユーザーコントロールではなくウィンドウオブジェクトに変更しました。
<!-- The new item was created as an UserControl, but what I needed was a Window object. -->
<UserControl>
...
</UserControl>
<!-- Changed it to Window and made other necessary adjustments. -->
<Window>
...
</Window>
問題は、実際には分離コードにありました。 User Controlとして作成されたため、ウィンドウの部分クラスは、次のようにUserControlを継承していました。
public partial class MyWindow : UserControl
{
public MyWindow ()
{
InitializeComponent();
}
}
これを修正するには、次のように継承を削除して、ウィンドウクラスを何も継承しないようにする必要がありました。
public partial class MyWindow
{
public MyWindow ()
{
InitializeComponent();
}
}
継承を削除した後、Visual Studioは「タイプ 'ウィンドウ'は直接コンテンツをサポートしていません」というエラーを表示しませんでした。もう。