Sto riscontrando problemi nel tentativo di ottenere il titolo del documento da un browser web in C#. Funziona bene in VB.NET, ma non mi darà alcuna proprietà in C#.C#: come ottengo il titolo del documento da un elemento WebBrowser?
Quando si digita MyBrowser.Document., le uniche opzioni che ottengo sono 4 metodi: uguale, GetHashCode, GetType e ToString - nessuna proprietà.
Penso che sia perché devo prima assegnare il documento a una nuova istanza, ma non riesco a trovare la classe HTMLDocument che esiste in VB.NET.
Fondamentalmente quello che voglio fare è restituire il Documento.Titolo ogni volta che WebBrowser carica/ricarica una pagina.
Qualcuno può aiutare per favore? Sarebbe molto apprezzato!
Ecco il codice che ho in questo momento ...
private void Link_Click(object sender, RoutedEventArgs e)
{
WebBrowser tempBrowser = new WebBrowser();
tempBrowser.HorizontalAlignment = HorizontalAlignment.Left;
tempBrowser.Margin = new Thickness(-4, -4, -4, -4);
tempBrowser.Name = "MyBrowser";
tempBrowser.VerticalAlignment = VerticalAlignment.Top;
tempBrowser.LoadCompleted += new System.Windows.Navigation.LoadCompletedEventHandler(tempBrowser_LoadCompleted);
tempTab.Content = tempBrowser; // this is just a TabControl that contains the WebBrowser
Uri tempURI = new Uri("http://www.google.com");
tempBrowser.Navigate(tempURI);
}
private void tempBrowser_LoadCompleted(object sender, EventArgs e)
{
if (sender is WebBrowser)
{
MessageBox.Show("Test");
currentBrowser = (WebBrowser)sender;
System.Windows.Forms.HtmlDocument tempDoc = (System.Windows.Forms.HtmlDocument)currentBrowser.Document;
MessageBox.Show(tempDoc.Title);
}
}
Questo codice non mi dà errori, ma non ho mai vedere la seconda MessageBox. Tuttavia, vedo il primo (il messaggio "Test"), quindi il programma sta arrivando a quel blocco di codice.
È necessario fare un cast HTMLDocument. – Mau
Mostraci il tuo codice. – SLaks