WEB开发网
开发学院手机开发Windows Mobile 开发 Wince上开发Silverlight程序的利器:xaml2cpp 阅读

Wince上开发Silverlight程序的利器:xaml2cpp

 2010-08-23 05:28:00 来源:WEB开发网   
核心提示:}在这种情况下我们会创建一个有标题的顶层窗口,我们传递它到构造函数中,Wince上开发Silverlight程序的利器:xaml2cpp(4),并且我们会从与构造函数参数相关的资源中加载XAML类,如果我们想改变这个行为我们可能在我们的继承类中重写InitWindowParms或者SetXAMLSource方法,并且v

}

在这种情况下我们会创建一个有标题的顶层窗口,我们传递它到构造函数中,并且我们会从与构造函数参数相关的资源中加载XAML类。

如果我们想改变这个行为我们可能在我们的继承类中重写InitWindowParms或者SetXAMLSource方法。

懒人喜欢C++的继承!

这些方法被CreateHost方法调用,它初始化我们的可视主机并且加载了我们的XAML:

// create the visual host and loads the XAML

virtual HRESULT CreateHost(HINSTANCE hInstance,IXRApplication* app)

{

HRESULT retcode;

XRWindowCreateParams wp;

ZeroMemory(&wp, sizeof(XRWindowCreateParams));

InitWindowParms(&wp);

XRXamlSource xamlsrc;

SetXAMLSource(hInstance,&xamlsrc);

if (FAILED(retcode=app->CreateHostFromXaml(&xamlsrc, &wp, &vhost)))

return retcode;

if (FAILED(retcode=vhost->GetRootElement(&root)))

return retcode;

return S_OK;

}

这个方法同样是虚函数,这样如果你需要在你的类中进行一些特殊的初始化 ,可以重写它。通常重写InitWindowParms和SetXAMLSource就足够了,但是一个在初始化时的虚函数调用不怎么的影响性能,所以我宁愿空出一些空间用来定制。

如果你重写CreateHost,请记住:其它的代码需要根节点,并且vhost智能指针会在该函数调用后初始化。

现在,让我们看看XAML2CPP.h中有什么。

/*

This file has been generated by XAML2CPP tool.

Modifications to this source code may be overwritten without warning when the XAML2CPP tool is executed.

XAML2CPP (c) 2009 by Valter Minute (valter.minute@gmail.com)

This code is provided as is and it's generated automatically. It's up to the developer to check that it works as expected.

*/

/*

This header includes all the classes generated by XAML2CPP the last time it was executed.

*/

#ifndef XAML2CPP_H

#define XAML2CPP_H

上一页  1 2 3 4 5 6 7  下一页

Tags:Wince 开发 Silverlight

编辑录入:coldstar [复制链接] [打 印]
赞助商链接