我的 .Net 标准项目正在使用 reflection
在 WPF 应用程序中调用一个方法。
我的 .NET 标准项目中的方法调用代码...
string path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Google.Cast.DesktopV2.exe");
var asm = Assembly.LoadFile(path);
Type t = asm.GetType("Google.Cast.DesktopV2.Utility.PlayMedia");
MethodInfo methodInfo = t.GetMethod("FindMediaPlayer");
var o = Activator.CreateInstance(t);
methodInfo.Invoke(o);
这是我在 WPF 应用程序中的方法。
public MediaElement FindMediaPlayer()
{
return ((MainWindow)System.Windows.Application.Current.MainWindow).VideoPlayer;
}
VideoPlayer 是我的 XAML 文件中的 MediaElement。我收到错误消息“调用线程无法访问此对象,因为其他线程拥有它。'”,无论如何我可以使用反射来实现此目的吗?