これと同じことを知りたいのですが、 Silverlight 4はx:TypeArgumentsをサポートして いますが、Windows8ストアアプリをサポートしています。
x:TypeArgumentsが機能しないのに、なぜ利用できるのですか?それとも私は何かが足りないのですか?x:TypeArgumentsがXAMLで定義されている場合でも、MainPage.igcsファイルは非ジェネリック基本クラスで自動生成されるため、もちろんコンパイルされません。
ジェネリック型を指定する「typedef」基本クラスを持つという提案された回避策で動作させることができますが、これは私にはかなりハックな感じがします。
// A generic PageBase, containing standard ViewModel-related utilities
internal abstract class PageBase<T> : Windows.UI.Xaml.Controls.Page where T : ViewModelBase
{
protected abstract T ViewModel { get; }
...
}
// The hack...
internal abstract class MainPageTypeDef : PageBase<MainViewModel>
{
// No code goes here...
}
// The page itself
internal sealed partial class MainPage : MainPageTypeDef
{
}
<views:PageBase
...
x:Class="Namespace.MainView"
x:TypeArguments="store:MainViewModel">
「typedef」クラスを持たない方法があるかどうか誰かが知っていますか?
どうもありがとう、ジョン