Проблемы с веб-браузером WPF - PullRequest
       2

Проблемы с веб-браузером WPF

3 голосов
/ 17 сентября 2010

Я использую WebBrowser в WPF следующим образом:

 <WebBrowser 
     Name="SSSBrowser" 
     Margin="8,4,8,8" 
     Grid.Row="1"            
     dp:WebBrowserUtility.BindableSource="{Binding WebAddress}"/>

И в C # я загружаю его просто, а пока вот так:

private string _webAddress;
public string WebAddress 
{
  get { return "http://www.somewebsite.com/updates/message/message.htm"; }
  set { _webAddress = value; }
}

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

Как узнать, вернул ли веб-сайт ошибку в коде, и отключить веб-браузер, чтобы он не выдавал ошибку на экране пользователю?

Любая помощь будет принята с благодарностью!

Ответы [ 4 ]

1 голос
/ 17 сентября 2010

Не уверен через WPF, но если вы используете HttpWebRequest и HttpWebResponse для программной попытки сначала получить ваш URL, ответ даст вам http StatusCode , т.е. 200, 404 и т. Д. Может быть полезно, если хочу сначала проверить 200 и отключить браузер. Не совсем ответ на ваш вопрос, но возможность.

0 голосов
/ 08 февраля 2012

Вы можете попробовать использовать NavigationService из System.Windows.Controls.Frame, как указано в этом сообщении MSDN на форуме .WebResponse всегда будет нулевым для элемента управления WebBrowser в WPF (, как описано в посте ).

0 голосов
/ 23 июня 2011

Если я прав, свойство Source не может быть привязано, потому что это не свойство зависимости.

Ознакомьтесь с этим постом:

привязать свойство Source веб-браузера в WPF

Herber

0 голосов
/ 17 сентября 2010

Кажется, что нет события ErrorOpeningURL для объекта WPF WebBrowser, поэтому, исходя из предыдущего опыта, вы можете подключиться к событию Navigated и проверить, является ли URI IE страницу ошибки (res: //Error.html .. IIRC) или покопайтесь в NavigationEventArgs для WebResponse и проверьте заголовки.

Чтобы устранить ошибку, спрячьте компонент WebBrowser, возможно, прикрыв его вежливым сообщением - ваш пользователь захочет узнать, что операция не удалась, но он не должен видеть навигацию FAIL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...