/ / L'application Hello World Surface ne fonctionne pas - wpf, visual-studio-2008, pixelsense

L'application Hello World Surface ne fonctionne pas - wpf, visual-studio-2008, pixelsense

Je crée l'application de démonstration "Hello World" pour Microsoft Surface. Voici le XAML:

<s:SurfaceWindow x:Class="HelloWorld.SurfaceWindow1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:s="http://schemas.microsoft.com/surface/2008"
Title="HelloWorld"
>
<s:SurfaceWindow.Resources>
<ImageBrush x:Key="WindowBackground" Stretch="None" Opacity="0.6" ImageSource="pack://application:,,,/Resources/WindowBackground.jpg"/>
</s:SurfaceWindow.Resources>

<Canvas Background="{StaticResource WindowBackground}" s:Contacts.ContactDown="OnCanvasContactDown">
<Label Name="HelloWorldLabel" Visibility="Hidden">Hello, World!</Label>
</Canvas>
</s:SurfaceWindow>

Voici le gestionnaire OnCanvasContactDown:

private void OnCanvasContactDown(object sender, ContactEventArgs e)
{
// Get the position of the current contact.
Point contactPosition = e.Contact.GetPosition(this);

// Set the X and Y position of HelloWorldLabel
// in relation to the canvas.
Canvas.SetLeft(HelloWorldLabel, contactPosition.X);
Canvas.SetTop(HelloWorldLabel, contactPosition.Y);

// Make the label visible.
HelloWorldLabel.Visibility = Visibility.Visible;
}

Le problème est que le gestionnaire d'événements ne reçoit jamaisappelé. Je le teste dans Visual Studio 2008. L'écran du simulateur de surface apparaît et lorsque je clique dessus, j'obtiens le retour visuel que je "touche", mais l'étiquette n'apparaît jamais. Si je mets un point d'arrêt n'importe où dans la fonction, il ne se casse jamais.

Qu'est-ce que je fais mal?

Réponses:

2 pour la réponse № 1

Résolu. Le problème était que je devais pré-démarrer le Surface Simulator et définir le Build CPU sur x86.


0 pour la réponse № 2

Est-ce quelque chose dans le sens de OnCanvasContactDown n'est pas réellement lié en tant que gestionnaire de délégué à l'action? Il y aura du code d'installation quelque part (ou peut-être pas - peut-être c'est le problème) qui définit le gestionnaire de l'événement ...

Oh, la visibilité de l'étiquette est également définie sur "Masqué" - est-ce un attribut par défaut ou persistant?