2

私は夢中になっていますか?それともコンパイラですか?

私は持っている:

Window w = new Window();

を期待する関数で使用しようとするとFrameworkElement、コンパイラは不平を言います:

「System.Windows.Window」から「System.Windows.FrameworkElement」に変換できません

私がやろうとしているときw.Show()、それは不平を言います:

'System.Windows.Window' には 'Show' の定義が含まれておらず、タイプ 'System.Windows.Window' の最初の引数を受け入れる拡張メソッド 'Show' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか? ?)

しかし、インテリセンスの「定義に移動」を実行するWindowと、 のサブクラスであるContentControlのサブクラスであるFrameworkElementことがわかり、Show()メソッドが表示されます。

私も試してみましたSystem.Windows.Window w = new System.Windows.Window()

どうしたの?

EDIT:コードサンプル(役立つ場合):

using System.Windows;

namespace MyApp
{
    public class MainViewModel
    {
        private void SomeMethod()
        {
            Window w = new Window();
            w.Show();
        }
    }
}

編集 2 :「CSProj」ItemGroup:

<ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.ComponentModel.Composition" />
    <Reference Include="System.Data" />
    <Reference Include="System.Windows.Interactivity" />
    <Reference Include="System.Xaml" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Core" />
    <Reference Include="System.Xml.Linq" />
    <Reference Include="System.Data.DataSetExtensions" />
    <Reference Include="WindowsBase" />
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
  </ItemGroup>
4

0 に答える 0