Как вынудить управление веб-браузером всегда открыть веб-страницу в том же окне?

Да, при условии, что вы используете обычное соединение, ваше устройство Bluetooth 4.2 с двумя режимами должно подключаться к устройству BT2.1 + EDR. В настоящее время большинство телефонов Android поддерживают двойной режим Bluetooth 4.X (где X равен 0, 1 или 2), и они могут без проблем подключаться к устройствам BT 2.1 + EDR.

9
задан abatishchev 4 December 2014 в 17:48
поделиться

2 ответа

Выезд: подтверждение концепции Системы.NET. Windows. Формы. Модуль WebBrowser с помощью исходного кода


Мой опыт об этом, средства управления дали мне видение, что эта проблема может попробованный, чтобы быть решенной на следующих шагах:

  1. всегда отменяйте событие NewWindow

  2. поймайте все нажатие ссылок

  3. но не вся ссылка может кэшироваться этот путь, таким образом, я решил проанализировать все теги <a> вручную на Документе, Загружающем Завершение

  4. в целом это управление очень плохо и было сделано так Microsoft сознательно. хотя существует мощный набор инструментов вокруг Webrowser. Документ. HtmlDocument и пространство имен MSHTML

  5. пример он использует, HtmlElement. DomElement

    foreach(HtmlElement tag in webBrowser.Document.All)        
    {
      switch (tag.TagName.ToUpper)
      {
        case "A":
        {
          tag.MouseUp += new HtmlElementEventHandler(link_MouseUp);
          break;
        }
      }
    }
    
    void link_MouseUp(object sender, HtmlElementEventArgs e)
    {
      HtmlElement link = (HtmlElement)sender;
      mshtml.HTMLAnchorElementClass a = (mshtml.HTMLAnchorElementClass)link.DomElement;
      switch (e.MouseButtonsPressed)
      {
        case MouseButtons.Left:
        {
          if ((a.target != null && a.target.ToLower() == "_blank") ||
              e.ShiftKeyPressed ||
              e.MouseButtonsPressed == MouseButtons.Middle)
          {
            // add new tab
          }
          else
          {
            // open in current tab
          }
          break;
        }
        case MouseButtons.Right:
        {
          // show context menu
          break;
        }
      }
    }
    

Посмотрите больше в первой ссылке, это - исходный код главного окна, существует много различных манипуляций там!

5
ответ дан 4 December 2019 в 11:08
поделиться

Ошибка в случае MouseBUttons.Left :

Ошибка 1 Управление не может пропасть из одной метки case ('case {{1} } 1048576: ') в другой C: \ Documents and Settings \ ever \ My Documents \ Visual Studio 2005 \ Projects \ Desarrollo \ wApp_SurverMonkey \ wApp_SurverMonkey \ frmNetcare.cs 64 17 wApp_SurverMonkey

-1
ответ дан 4 December 2019 в 11:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: