فهرست منبع

Fix WindowsInteropTest

Max Katz 2 سال پیش
والد
کامیت
da157ff509

+ 2 - 2
samples/interop/WindowsInteropTest/EmbedToWinFormsDemo.Designer.cs

@@ -1,4 +1,4 @@
-using Avalonia.Win32.Embedding;
+using Avalonia.Win32.Interoperability;
 
 namespace WindowsInteropTest
 {
@@ -116,4 +116,4 @@ namespace WindowsInteropTest
         private System.Windows.Forms.GroupBox groupBox2;
         private WinFormsAvaloniaControlHost avaloniaHost;
     }
-}
+}

+ 6 - 8
samples/interop/WindowsInteropTest/EmbedToWpfDemo.xaml

@@ -4,9 +4,7 @@
              xmlns:av="clr-namespace:Avalonia.Controls;assembly=Avalonia.Controls"
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
-             xmlns:local="clr-namespace:WindowsInteropTest"
-             xmlns:embedding="clr-namespace:Avalonia.Win32.Embedding;assembly=Avalonia.Win32"
-             xmlns:wpf="clr-namespace:Avalonia.Win32.Interopiblity;assembly=Avalonia.Win32.Interoperability"
+             xmlns:avalonia="clr-namespace:Avalonia.Win32.Interoperability;assembly=Avalonia.Win32.Interoperability"
              mc:Ignorable="d" 
              d:DesignHeight="400" d:DesignWidth="400" MinWidth="500" MinHeight="400">
     <DockPanel>
@@ -17,17 +15,17 @@
             </StackPanel>
         </GroupBox>
         <GroupBox Header="Avalonia button" DockPanel.Dock="Bottom">
-            <wpf:WpfAvaloniaHost >
+            <avalonia:WpfAvaloniaHost>
                 <av:Button Content="Avalonia button"/>
-            </wpf:WpfAvaloniaHost>
+            </avalonia:WpfAvaloniaHost>
         </GroupBox>
         <GroupBox Header="AvBtn" DockPanel.Dock="Right">
-            <wpf:WpfAvaloniaHost x:Name="RightBtn">
+            <avalonia:WpfAvaloniaHost x:Name="RightBtn">
                 <av:Button Content="Avalonia button 2"/>
-            </wpf:WpfAvaloniaHost>
+            </avalonia:WpfAvaloniaHost>
         </GroupBox>
         <GroupBox Header="Avalonia">
-            <wpf:WpfAvaloniaHost x:Name="Host"/>
+            <avalonia:WpfAvaloniaHost x:Name="Host"/>
         </GroupBox>
     </DockPanel>
 </Window>

+ 8 - 31
samples/interop/WindowsInteropTest/EmbedToWpfDemo.xaml.cs

@@ -1,52 +1,29 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Controls;
-using System.Windows.Data;
-using System.Windows.Documents;
-using System.Windows.Input;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Navigation;
-using System.Windows.Shapes;
+using System.Windows;
 using Avalonia;
 using Avalonia.Controls;
-using Avalonia.Rendering;
-using Avalonia.VisualTree;
 using ControlCatalog;
-using Window = System.Windows.Window;
 
 namespace WindowsInteropTest
 {
-    /// <summary>
-    /// Interaction logic for EmbedToWpfDemo.xaml
-    /// </summary>
-    public partial class EmbedToWpfDemo : Window
+    public partial class EmbedToWpfDemo
     {
-        private IRenderer _renderer;
         public EmbedToWpfDemo()
         {
             InitializeComponent();
-            var view = new MainView();
-            Host.Content = view;
-            var tl = (TopLevel)view.GetVisualRoot();
-            tl.AttachDevTools();
-            _renderer = tl.Renderer;
-            _renderer.Start();
-            var btn = (Avalonia.Controls.Button) RightBtn.Content;
+            Host.Content = new MainView();
+
+            var btn = (Button) RightBtn.Content!;
             btn.Click += delegate
             {
                 btn.Content += "!";
             };
 
+            Loaded += OnLoaded;
         }
 
-        protected override void OnClosed(EventArgs e)
+        private void OnLoaded(object sender, RoutedEventArgs e)
         {
-            _renderer.Stop();
-            base.OnClosed(e);
+            TopLevel.GetTopLevel((MainView)Host.Content)!.AttachDevTools();
         }
     }
 }

+ 1 - 2
samples/interop/WindowsInteropTest/WindowsInteropTest.csproj

@@ -1,8 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
     <OutputType>WinExe</OutputType>
-    <TargetFramework>net462</TargetFramework>
-    <PlatformTarget>x64</PlatformTarget>
+    <TargetFrameworks>net462;net6.0-windows</TargetFrameworks>
     <UseWPF>true</UseWPF>
     <UseWindowsForms>true</UseWindowsForms>
   </PropertyGroup>