Come passare Eventi a HostVisual con WPF

March 30

Gli oggetti in WPF sono generalmente accessibili solo dal filo che li ospita. Se, tuttavia, si desidera passare un evento ad un altro oggetto, è possibile farlo con HostVisual. Windows Presentation Foundation è un sottosistema grafico per interfacce utente, originariamente sviluppato per integrarsi nel .NET Framework. La struttura di programmazione WPF è complesso e questo uso del codice deve essere utilizzato solo se si sa che si vuole fare questo.

istruzione

1 Aprire lo script in WPF.

2 Individuare la sezione di codice in cui si desidera passare l'evento.

3 Inserire le seguenti righe di codice:

private HostVisual CreateMediaElementOnWorkerThread()
{
// Create the HostVisual that will "contain" the VisualTarget
// on the worker thread.
HostVisual hostVisual = new HostVisual();

// Girare un thread di lavoro, e passare il HostVisual che
// Dovrebbe essere parte di.
filo filo = new Thread (nuova ParameterizedThreadStart (MediaWorkerThread));
thread.ApartmentState = ApartmentState.STA;
thread.IsBackground = true;
Thread.start (hostVisual);

// Attendere che il thread di lavoro di spin up e creare il VisualTarget.
s_event.WaitOne ();

tornare hostVisual;
}

4 Modificare il codice in modo che sia rilevante per lo script.

5 Premere il tasto "Ctrl" e "S" per salvare il codice.