J'ai mentionné le lien suivant:Comment implémenter le code pour plusieurs boutons en utilisant C++ dans Silverlight pour Windows Embedded
Silverlight for Windows Embedded
En se référant ce lien i créé une application de démonstration qui se composent de deux boutons créés à l'aide de Microsoft expression mélange 2 outils. Et puis écrit un code référant au site ci-dessus. Maintenant, les noms de mes boutons sont "Browser Button" et "Media Button". Au clic de l'un des bouton je devrais pouvoir lancer l'application respective. Je pouvais faire pour "Browser Button" mais pas pour "Media Button" et si je fais pour "Media Button" alors je ne suis pas capable de faire pour "Browser Button" .. Je veux dire que comment dois-je créer un événement gestionnaire pour les deux boutons.
C'est le code C++ que je dois modifier
class BtnEventHandler
{
public:
HRESULT OnClick(IXRDependencyObject* source,XRMouseButtonEventArgs* args)
{
RETAILMSG(1,(L"Browser event"));
Execute(L"\\Windows\\iesample.exe",L"");
return S_OK;
}
};
// entry point for the application.
INT WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,
LPWSTR lpCmdLine,int nCmdShow)
{
PrintMessage();
int exitCode = -1;
HRESULT hr = S_OK;
if (!XamlRuntimeInitialize())
return -1;
HRESULT retcode;
IXRApplicationPtr app;
if (FAILED(retcode=GetXRApplicationInstance(&app)))
return -1;
if (FAILED(retcode=app->AddResourceModule(hInstance)))
return -1;
XRWindowCreateParams wp;
ZeroMemory(&wp, sizeof(XRWindowCreateParams));
wp.Style = WS_OVERLAPPED;
wp.pTitle = L"Bounce Test";
wp.Left = 0;
wp.Top = 0;
XRXamlSource xamlsrc;
xamlsrc.SetResource(hInstance,TEXT("XAML"),MAKEINTRESOURCE(IDR_XAML1));
IXRVisualHostPtr vhost;
if (FAILED(retcode=app->CreateHostFromXaml(&xamlsrc, &wp, &vhost)))
return -1;
IXRFrameworkElementPtr root;
if (FAILED(retcode=vhost->GetRootElement(&root)))
return -1;
IXRButtonBasePtr btn;
if (FAILED(retcode=root->FindName(TEXT("BrowserButton"), &btn)))
return -1;
IXRDelegate<XRMouseButtonEventArgs>* clickdelegate;
BtnEventHandler handler;
if(FAILED(retcode=CreateDelegate
(&handler,&BtnEventHandler::OnClick,&clickdelegate)))
return -1;
if (FAILED(retcode=btn->AddClickEventHandler(clickdelegate)))
return -1;
UINT exitcode;
if (FAILED(retcode=vhost->StartDialog(&exitcode)))
return -1;
return exitCode;
}
Je dois ajouter gestionnaire d'événements, pour le bouton de sorte que sur l'émulateur à chaque fois que je clique sur une du bouton que je devrais être en mesure de lancer les applications respectives.
Merci à l'avance
Où est le code pour le 2ème bouton? – Shaihi