Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: WPF Access object
/// <summary>
/// function put username and password
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void m_vpn_needLoginAndPassword(object sender, NeedLoginAndPasswordEventArgs e)
{
   e.UserName = username.Text;
   e.Password = password.Password;
 
}
 

error
 
The calling thread cannot access this object because a different thread owns it.
 
i use
 
if (Application.Current.Dispatcher.CheckAccess())
{
   e.UserName = username.Text;
   e.Password = password.Password;
}
else
{
    //Other wise re-invoke the method with UI thread access
   e.UserName = username.Text;
   e.Password = password.Password;
 
}</pre>
 
not work
 
thank you
Posted 28-Jun-13 16:38pm
witawat480

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

All correct, exactly as the exception message tells you. On the else branch, use Dispatcher.Invoke:
http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher.invoke.aspx[^].
 
For some explanations, please see my past answers:
Control.Invoke() vs. Control.BeginInvoke()[^],
Problem with Treeview Scanner And MD5[^].
 
—SA
  Permalink  
Comments
witawat at 29-Jun-13 2:06am
   
hello
 
i not understand Invoke function if code work at c# not use wpf ..
///
/// function put username and password
///

/// <param name="sender"></param>
/// <param name="e"></param>
private void m_vpn_needLoginAndPassword(object sender, NeedLoginAndPasswordEventArgs e)
{
if (Application.Current.Dispatcher.CheckAccess())
{
e.UserName = username.Text;
e.Password = password.Password;
}
else
{
//Other wise re-invoke the method with UI thread access
e.UserName = username.Text;
e.Password = password.Password;
 
// Can use code ?

}
}
Sergey Alexandrovich Kryukov at 29-Jun-13 12:10pm
   
Why are you repeating the code? Why didn't you follow my advice?
Even if it's new, please move it to the question using "Improve question".
—SA

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 Zoltán Zörgő 320
1 CHill60 165
2 BillWoodruff 120
3 Peter Leow 120
4 bling 80
0 Sergey Alexandrovich Kryukov 9,423
1 OriginalGriff 6,891
2 Peter Leow 4,637
3 Zoltán Zörgő 4,304
4 CHill60 2,932


Advertise | Privacy | Mobile
Web02 | 2.8.150129.1 | Last Updated 29 Jun 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100