Хостинг и взаимодействие с веб-страницей в Приложении WPF

character*40 :: string является символьной строкой длиной 40

character(len=40) :: string также является символьной строкой длиной 40

character :: string(40) - это массив из 40 символьных строк длины 1

character*40 :: string(40) - массив из 40 символьных строк длиной 40

character(len=40) :: string(40) - это массив из 40 символьных строк длиной 40

. Второй внутренняя запись не выполняется, поскольку она записывает первую строку в массив string2. Первая строка string2(1) имеет длину всего 1 символ и она слишком короткая. По этой причине вы получаете условие ошибки конца записи , это сообщение слишком длинное для поставляемой строки.

Внутренняя запись обрабатывает элементы массива как отдельные записи (похожие на отдельные строки) , Можно использовать массивы строк во внутренней записи, если для записи в массив больше записей (строк).

20
задан Micah 22 January 2009 в 18:04
поделиться

2 ответа

Можно разместить веб-страницу в приложении WPF с помощью средств управления WebBrowser, который был добавлен в.NET 3,5 SP1:

<Grid>
    <WebBrowser Name="browser" />
</Grid>

И в коде - позади Вас должны установить Uri на Вашу страницу и объект (который должен быть com-видим), который нужно назвать из сценария Java:

public partial class Window1 : Window
{
    public Window1()
    {
        InitializeComponent();

        string uri = AppDomain.CurrentDomain.BaseDirectory + "TestPage.html";
        this.browser.Navigate(new Uri(uri, UriKind.Absolute));
        this.browser.ObjectForScripting = new ScriptingHelper();
    }

    [ComVisible(true)]
    public class ScriptingHelper
    {
        public void ShowMessage(string message)
        {
            MessageBox.Show(message);
        }
    }
}

И наконец на Вашей странице необходимо назвать код с помощью window.external как ниже:

<head>
    <title></title>

    <script type="text/javascript">
        function OnClick()
        {
            var message = "Hello!";
            window.external.ShowMessage(message);
        }
    </script>
</head>
<body>
    <a href="#" onclick="OnClick()">Click me</a>
</body>
38
ответ дан 29 November 2019 в 23:14
поделиться

o, и необходимо добавить сохраненный от URL = (0014) комментарий about:internet выше главного тега, чтобы заставить IE не заблокировать javascript

13
ответ дан 29 November 2019 в 23:14
поделиться
Другие вопросы по тегам:

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