İzlenecek yol: WPF'de ActiveX Denetimi Barındırma
Tarayıcılarla geliştirilmiş etkileşimi etkinleştirmek için, Microsoft ActiveX denetimlerini WPF tabanlı uygulamanızda kullanabilirsiniz. Bu izlenecek yol, Microsoft Windows Media Player bir sayfada denetim olarak nasıl barındırabileceğinizi gösterir WPF .
Bu izlenecek yolda gösterilen görevler şunlardır:
Proje oluşturuluyor.
ActiveX denetimi oluşturuluyor.
Bir WPF sayfasında ActiveX denetimini barındırma.
Bu yönergeyi tamamladığınızda, Microsoft ActiveX denetimlerini tabanlı uygulamanızda nasıl kullanacağınızı anlamış olursunuz WPF .
Önkoşullar
Bu izlenecek yolu tamamlamak için aşağıdaki bileşenlere ihtiyacınız vardır:
Microsoft Windows Media Player, Visual Studio 'Nun yüklü olduğu bilgisayarda yüklüdür.
Visual Studio 2010.
Projeyi Oluşturma
Projeyi oluşturmak ve ayarlamak için
Adlı bir WPF uygulaması projesi oluşturun
HostingAxInWpf.Çözüme bir Windows Forms denetim kitaplığı projesi ekleyin ve projeyi adlandırın
WmpAxLib.WmpAxLib projesinde, wmp.dll adlı Windows Media Player derlemesine bir başvuru ekleyin.
Araç kutusunu açın.
Araç kutusuna sağ tıklayın ve ardından öğeleri seç' e tıklayın.
Com bileşenleri sekmesine tıklayın, Windows Media Player denetimini seçin ve ardından Tamam' a tıklayın.
Windows Media Player denetimi araç kutusuna eklenir.
Çözüm Gezgini, UserControl1 dosyasına sağ tıklayın ve ardından Yeniden Adlandır' a tıklayın.
Adı
WmpAxControl.vbWmpAxControl.csdile bağlı olarak veya olarak değiştirin.Tüm başvuruları yeniden adlandırmanız istenirse, Evet' e tıklayın.
ActiveX denetimi oluşturma
Visual Studio AxHost , denetim tasarım yüzeyine eklendiğinde Microsoft ActiveX denetimi için otomatik olarak bir sarmalayıcı sınıfı oluşturur. Aşağıdaki yordam AxInterop.WMPLib.dll adlı bir yönetilen derleme oluşturur.
ActiveX denetimi oluşturmak için
Windows Form Tasarımcısı WmpAxControl. vb veya WmpAxControl. cs dosyasını açın.
Araç kutusundan, tasarım yüzeyine Windows Media Player denetimini ekleyin.
Özellikler penceresi, Windows Media Player denetiminin Dock özelliğinin değerini olarak ayarlayın Fill .
WmpAxLib denetim kitaplığı projesi oluşturun.
Bir WPF sayfasında ActiveX denetimini barındırma
ActiveX denetimini barındırmak için
HostingAxInWpf projesinde, oluşturulan ActiveX birlikte çalışabilirlik derlemesine bir başvuru ekleyin.
Bu derleme AxInterop.WMPLib.dll olarak adlandırılır ve Windows Media Player denetimini içeri aktardığınızda WmpAxLib projesinin hata ayıklama klasörüne eklenmiştir.
WindowsFormsIntegration.dll adlı WindowsFormsIntegration derlemesine bir başvuru ekleyin.
System.Windows.Forms.dll adlı Windows Forms derlemesine bir başvuru ekleyin.
WPF Tasarımcısında MainWindow. xaml ' i açın.
Öğeyi adlandırın Grid
grid1.<Grid Name="grid1"> </Grid>Tasarım görünümü veya XAML görünümünde Window öğesini seçin.
Özellikler penceresi, Olaylar sekmesine tıklayın.
Olaya çift tıklayın Loaded .
Olayı işlemek için aşağıdaki kodu ekleyin Loaded .
Bu kod, denetimin bir örneğini oluşturur WindowsFormsHost ve
AxWindowsMediaPlayeralt öğesi olarak denetimin bir örneğini ekler.private void Window_Loaded(object sender, RoutedEventArgs e) { // Create the interop host control. System.Windows.Forms.Integration.WindowsFormsHost host = new System.Windows.Forms.Integration.WindowsFormsHost(); // Create the ActiveX control. WmpAxLib.AxWindowsMediaPlayer axWmp = new WmpAxLib.AxWindowsMediaPlayer(); // Assign the ActiveX control as the host control's child. host.Child = axWmp; // Add the interop host control to the Grid // control's collection of child controls. this.grid1.Children.Add(host); // Play a .wav file with the ActiveX control. axWmp.URL = @"C:\Windows\Media\tada.wav"; }Private Sub Window_Loaded(ByVal sender As Object, ByVal e As RoutedEventArgs) ' Create the interop host control. Dim host As New System.Windows.Forms.Integration.WindowsFormsHost() ' Create the ActiveX control. Dim axWmp As New AxWMPLib.AxWindowsMediaPlayer() ' Assign the ActiveX control as the host control's child. host.Child = axWmp ' Add the interop host control to the Grid ' control's collection of child controls. Me.grid1.Children.Add(host) ' Play a .wav file with the ActiveX control. axWmp.URL = "C:\Windows\Media\tada.wav" End SubUygulamayı derleyip çalıştırmak için F5'e basın.