2010-01-30 1 views
0

У меня есть текстовое поле в одном из моих форм и я хочу, чтобы вызвать функцию яваскрипта из файла JavaScript ...Вызов яваскрипта функции из текстового поля в WinForms

Мой код

this.txtbox.Text = ""; 
    this.txtbox.Location = new Point(10, 20); 
    this.txtbox.Size = new System.Drawing.Size(200, 100); 
    this.txtbox.Multiline = true; 
    this.Controls.Add(txtbox); 
    this.txtbox1.Text = ""; 
    this.txtbox1.Location = new Point(220,100); 
    this.txtbox1.Size = new System.Drawing.Size(100,100); 
    this.Controls.Add(txtbox1); 

И мой javascript.js файл содержит функцию

function alertMsgLength() { 
    alert("a"); 
} 

Как звонить alertMsgLength() функцию моего текстового поля,

this.txtbox.OnKeyPress=? 
this.txtbox.OnKeyDown=? 

Любое предложение ...

+0

Вы отметили свой вопрос «winforms», но ваш JavaScript выглядит так, как будто он ожидает веб-страницу. Можете ли вы уточнить свою среду? WCF или ...? –

+0

@ T.J теперь его простая функция javascript ... Как назвать это в моем текстовом поле ... –

+0

Мой вопрос все еще стоит, какая среда? Является ли это автономным приложением Windows Form? Веб-приложение? Ответ * вид зависит от этого. –

ответ

0

Чтобы вызвать функцию JavaScript из приложения # WinForms C, вам придется провести время выполнения сценариев в вашем приложении. Microsoft предоставляет интерфейсы, которые позволят вам выполнить Windows Scripting Engine внутри вашего приложения и выставлять на него свои элементы управления. Это непростая задача, и я бы не предложил делать это, если у вас нет очень веской причины (например, написать очень большое настраиваемое приложение, которое вы хотите предоставить API для пользователей, чтобы изменить поведение и т. Д.). Взгляните на эти ссылки: http://msdn.microsoft.com/en-gb/library/t9d4xf28(VS.85).aspx http://www.codeproject.com/KB/cs/csscriptengine.aspx

P.S. Если вам просто нужно вызвать некоторую функцию JavaScript из вашего текстового поля, я бы настоятельно рекомендовал преобразовать этот JavaScript в C#. C# может делать все, что языки сценариев могут делать лучше.