private void OnLoaded(object sender, RoutedEventArgs e) { Loaded -= OnLoaded; var currentFolder = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? Environment.CurrentDirectory; #if DEBUG var path = Path.Combine(currentFolder, "..", "..", "..", "Extensions", "Walterlv.Extensions.WPF", "bin", "Debug"); path = Path.GetFullPath(path); #else var path = currentFolder; #endif var domain = AppDomain.CreateDomain("X"); var instance = (DomainX)domain.CreateInstanceAndUnwrap( typeof(DomainX).Assembly.FullName, typeof(DomainX).FullName); var contract = instance.GetElement(); var element = FrameworkElementAsyncAdapters.ContractToViewAdapter(contract); Content = element; }
public INativeHandleContract GetElement() { return(FrameworkElementAsyncAdapters.ViewToContractAdapter( new Rectangle { Width = 200, Height = 100, Fill = Brushes.ForestGreen, })); }
public INativeHandleContract GetControl() { INativeHandleContract value = null; Application.Current.Dispatcher.Invoke(new Action(() => { var element = _factory.GetControl(); //value = FrameworkElementAdapters.ViewToContractAdapter(element); value = FrameworkElementAsyncAdapters.ViewToContractAdapter(element); })); return(value); }