Windows Mobile SDK: как превратить ярлык/кнопку в ссылку сайта?

57
5

Я программирую в Windows Mobile SDK 6 с помощью Visual Basic, я хотел бы знать, как сделать кнопку открытой браузера смартфона с определенным путем веб-сайта (сделать ссылку)

До сих пор я добрался до следующего фрагмента кода:

 Public Class GuitarHelperPage
Public link As New WebBrowser
Public adress As Uri

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

adress = New Uri("https://www.google.com")

Try
link.Navigate(adress)
'link.Focus()

Catch ex As System.UriFormatException
Return
End Try

End Sub

(прокомментировал 'link.Focus()' его только что я попытался, но я получил тот же результат)

Я просто хочу нажать кнопку и открыть браузер на главной странице google. Но когда я нажимаю на него, предупреждение "Эта страница содержит как безопасные, так и небезопасные элементы. Вы хотите продолжить?" появляется, и когда я нажимаю "да", больше ничего не происходит.

Я изучал и нашел это на страницах справки MSDN:

"Класс WebBrowser может использоваться только в потоках, установленных в режиме однопоточной квартиры (STA). Чтобы использовать этот класс, убедитесь, что ваш основной метод отмечен атрибутом STAThreadAttribute"

Я добавил этот мой основной метод:

<STAThread()> _
Shared Sub Main()

Но все же я получаю эту ошибку: "Тип STAThread не определен". И не могу найти прочь, я попытался добавить этот же атрибут в проект Windows Desktop VB, и он работает, может быть, есть еще один способ сделать это в Mobile?

Я использую.Net Framework 3.5 и windows mobile sdk 6.0 для этого проекта

Пожалуйста, помогите, спасибо.

спросил(а) 2012-02-09T00:02:00+04:00 8 лет, 7 месяцев назад
1
Решение
70

Если вы хотите открыть браузер по умолчанию, вам не нужен элемент управления WebBrowser. Просто используйте класс Process, в частности Start overload, который принимает ProcessStartInfo. Установите UseShellExecute свойство ProcessStartInfo к истине, так что он откроет браузер по умолчанию (например, если пользователь установил Opera Mobile, он будет использовать это, не только всегда заставить IE).

ответил(а) 2012-02-09T06:35:00+04:00 8 лет, 7 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема