PointerPointProperties.IsPrimary Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un valore che indica se l'input proviene dal puntatore primario quando vengono registrati più puntatori.
public:
property bool IsPrimary { bool get(); };
bool IsPrimary();
public bool IsPrimary { get; }
var boolean = pointerPointProperties.isPrimary;
Public ReadOnly Property IsPrimary As Boolean
Valore della proprietà
bool
True se l'input proviene dal puntatore designato come primario; in caso contrario false.
Esempio
In questo esempio vengono usati puntini di sospensione colorati diversi per mostrare se il puntatore associato al puntatore PointerRoutedEventArgs è il puntatore primario.
private void MainPage_PointerPressed(object sender, PointerRoutedEventArgs e)
{
PointerPoint pt = e.GetCurrentPoint(pointerCanvas);
contacts[pt.PointerId] = pt;
PointerCounter.Text = contacts.Count.ToString();
Ellipse ellipse = new Ellipse();
ellipse.StrokeThickness = 2;
ellipse.Width = ellipseDiameter;
ellipse.Height = ellipseDiameter;
ellipse.Tag = pt.PointerId;
TranslateTransform translate = new TranslateTransform();
translate.X = pt.Position.X - ellipseDiameter / 2;
translate.Y = pt.Position.Y - ellipseDiameter / 2;
ellipse.RenderTransform = translate;
pointerCanvas.Children.Add(ellipse);
if (pt.Properties.IsPrimary == true)
{
primaryPointer = pt;
primaryEllipse = ellipse;
primaryEllipse.Scale(scaleX: 2, scaleY: 2, centerX: 0, centerY: 0).Start();
ellipse.Stroke = new SolidColorBrush(Windows.UI.ColorHelper.FromArgb(255, 255, 0, 0));
// Create the transform
ScaleTransform scaleTransform = new ScaleTransform();
scaleTransform.ScaleX = primaryEllipse.Width * 1.25;
scaleTransform.ScaleY = primaryEllipse.Height * 1.25;
primaryEllipse.RenderTransform = scaleTransform;
PointerPrimary.Text = pt.PointerId.ToString();
}
else
ellipse.Stroke = new SolidColorBrush(Windows.UI.ColorHelper.FromArgb(255, 0, 0, 255));
e.Handled = true;
}
Commenti
Il puntatore primario è un singolo puntatore (tocco, mouse e penna/stilo) nell'interazione corrente.
Per il mouse, il puntatore primario è l'unico puntatore per cui è possibile generare gli eventi del mouse.
Per il tocco (dove può essere presente più puntatori simultanei), il puntatore primario è il primo contatto in un'interazione. Per qualsiasi interazione dopo il primo evento PointerPressed , IsPrimary restituisce false.
Un nuovo puntatore primario viene registrato solo quando tutti i contatti in tale interazione vengono rimossi e viene successivamente rilevato un nuovo contatto.
Un puntatore primario può eseguire azioni che non sono disponibili per altri puntatori. Ad esempio, quando un puntatore primario genera un messaggio di WM_POINTERDOWN in una finestra inattiva, viene inviato anche un messaggio WM_POINTERACTIVATE] a tale finestra.