2
我是一個windows phone開發的新手,所以如果我的問題是一個愚蠢的問題,請原諒。在xaml中實例化一個通用頁面
我已經開發了一個簡單的泛型類,旨在成爲WP7應用程序中所有頁面的基類。這裏有雲:
namespace Subway.Rails
{
public class Screen<TModel> : PhoneApplicationPage where TModel: class, new()
{
private static readonly DependencyProperty ModelProperty = DependencyProperty.Register("Model", typeof(TModel),
typeof (Screen<TModel>),
new PropertyMetadata(new TModel()));
public TModel Model
{
get { return GetValue(ModelProperty) as TModel; }
set { SetValue(ModelProperty, value); }
}
}
}
然而,當我試圖使用x:TypeArguments
指令
<rails:Screen x:TypeArguments="models:NotesStorage" xmlns:rails="clr-namespace:Subway.Rails;assembly=Subway.Rails" ...
在XAML申報頁面,並在* .xaml.cs加倍的基本類型文件
public partial class HomeView : Screen<NotesStorage>
我得到運行時錯誤
Error 7 Using the generic type 'Subway.Rails.Screen<TModel>' requires 1 type arguments D:\development\labs\mobilelab\Subway.Notes\Subway.Notes\obj\Debug\Views\HomeView.g.cs 37 50 Subway.Notes
生成的文件中。
有什麼方法可以在XAML中實例化通用頁面嗎?
[Silverlight 4支持x:TypeArguments]的可能重複(http://stackoverflow.com/questions/4270351/silverlight-4-support-for-xtypearguments) – nemesv