none
webBrowser.Document dem ViewModel übergeben. Wie? RRS feed

  • Frage

  • Hey,

    ich bins wieder und zwar bin ich gerade dabei das geladene Dokument von meinem webBrowser meinem ViewModel zu übergeben, damit ich da damit weiterarbeiten kann.

    Ich habe schon herausgefunden, dass das über die Dependency Properties läuft, habe auch mal nachrecherchiert, aber mir fehlt die Übung und das Wissen dies zu iimplementieren, da ich mich immer noch nicht ganz mit WPF anfreunden kann.

    Ich habe etliche Beispiele gefunden, aber ich weiß nicht wie ich mein Problem angehen soll. Kann mir jemand eine Art Checkliste geben, damit ich wenigstens einen Ansatz habe und genau weiß was ich tun muss. Bisher scheint es mir sehr Abstrakt.

    Danke im Vorraus

    Adrian 
    Donnerstag, 12. April 2018 14:23

Alle Antworten

  • Hi Adrian,
    deine Frage ist etwas unverständlich.

    Du lädst ein Dokument. Von welchem Typ ist das Dokument und wie wird es an das Webbrowser-Steuerelement gebunden? Was soll dann mit dem Dokument gemacht werden?


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    Donnerstag, 12. April 2018 19:50
  • Hallo,

    ich lade eine .ppt in das WebBrowser-Control.

    Binden tue ich es wie folgt - läuft alles über Interop.Powerpoint, spielt aber ja keine Rolle :

    definierten variablen:

    private PPt.Application oPPApplication = null;
    private PPt.Presentation oPPPresentation = null;
            private PPt.Slide oPPSlide;
            private int slide;
    (das ist alles noch in der UserControl und nicht im View-Model:)

    public Page1()
            {
                InitializeComponent();
                powerPointBrowser1.Navigate(strFileName);
                powerPointBrowser1.LoadCompleted += powerPointBrowser1_LoadCompleted;

    (oDocument ist vom Typ Object)

     private void powerPointBrowser1_LoadCompleted(object sender, NavigationEventArgs e)
            {
                oDocument = powerPointBrowser1.Document;
                oPPPresentation = (PPt.Presentation)oDocument;
                oPPApplication = oPPPresentation.Application;
            }

    Nun aber, brauch ich das oDocument in meinem View-Model, da ich dort damit weiterarbeiten muss.
    zum Beispiel möchte ich diese Mehtode verwenden:

    private string GetSlideNumber()
            {
                oPPSlide = oPPApplication.ActivePresentation.SlideShowWindow.View.Slide; //current Slide
    slide = oPPSlide.SlideNumber; //nuber of current Slide string a = slide.ToString(); return a; }

    Kann ich aber nicht, da OPPApplication noch nicht den Verweis zum Document hat.

    Wie kann ich es übergeben?

    Liebe Grüße
    Adrian 










    • Bearbeitet michad2151 Freitag, 13. April 2018 07:24
    Freitag, 13. April 2018 06:07