質問

XAML&C#を使用してMetroアプリに取り組んでいます。 Win7でWPFを使用してこれを開始しました。 UserControlから継承する基本クラスを作成し、それをXAMLに入れようとしました。

Windows 7では、これはうまくいきました:

<MyType:AnImplementation
 ...
 xmlns:MyType="clr-namespace:MyAppNamespace"
/>

Win8で同じことを試しましたが、残念ながらエラーが発生しました -

<MyType:AnImplementation
 ...
 xmlns:MyType="using:MyAppNamespace"
/>

これが生成されました:Compilexamlタスクは予期せず失敗しました。次に、NULL参照例外。

私はWPF Whizではないので、これを完全に間違っているかもしれません - 私は最近それに入り始めましたが、この問題を分離するのに苦労しています。これはある種の鶏/卵の問題ですか、それともWin8 XAMLでカスタムユーザーコントロールを構築する別の方法がありますか?

編集: :もっと明確にすることは役に立つかもしれないと思いました。私はユーザーコントロールの作成に問題がありません。自分のベースタイプのusercontrolsを作成するのに苦労しています。 UserControl. 。例えば:

基本クラスでは、MyBaseTypeに電話します。これは、UserControlから継承し、仮想的な方法をいくつか持っています。

public class MyBaseType : UserControl
{
    public MyBaseType() : base() {}
}

ActionTileと呼ばれる新しいUserControl:

public partial class ActionTile : MyBaseType {}

これをxamlに入れたとき:

<myType:MyBaseType
    ... (other XAML imports)
    xmlns:myType="using:MyNamespace"/>

コンパイラが爆発します。

複製したい場合は、継承する基本クラスを作成します UserControl, 、ベースクラスから継承するコントロールを実装し、その新しいタイプの新しいusercontrolを作成しようとします。私が言ったように、Windows 7のWPFで正常に動作します。

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top