Windows 8 XAML MetroアプリのベースUSERCONTROLクラス
-
30-10-2019 - |
質問
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で正常に動作します。
正しい解決策はありません
所属していません StackOverflow