WebBrowser.InvokeScript Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Şu anda yüklü olan belgede tanımlanan bir betik işlevi yürütür.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| InvokeScript(String) |
Şu anda yüklü olan belge tarafından uygulanan bir betik işlevi yürütür. |
| InvokeScript(String, Object[]) |
Şu anda yüklü olan belgede tanımlanan bir betik işlevini yürütür. |
InvokeScript(String)
Şu anda yüklü olan belge tarafından uygulanan bir betik işlevi yürütür.
public:
System::Object ^ InvokeScript(System::String ^ scriptName);
public object InvokeScript(string scriptName);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object
Parametreler
- scriptName
- String
Yürütülecek betik işlevinin adı.
Döndürülenler
Etkin Betik çağrısı tarafından döndürülen nesne.
Özel durumlar
Örnek WebBrowser artık geçerli değil.
Temel alınan yerel WebBrowser başvuru alınamadı.
Betik işlevi yok.
Örnekler
Aşağıdaki örnekte, InvokeScript(String) kullanarak bir WPF uygulamasından belgedeki bir betik işlevinin nasıl çağrıldığı gösterilmektedir. Bu örnekte betik işlevinin parametresi yoktur.
Aşağıda, WPF'den çağrılacak betik işlevini uygulayan HTML belgesi yer alır.
<html>
<head>
<script type="text/javascript">
// Function Without Parameters
function JavaScriptFunctionWithoutParameters()
{
outputID.innerHTML = "JavaScript function called!";
}
</script>
</head>
<body>
<div id="outputID" style="color:Red; font-size:16">
Hello from HTML document with script!
</div>
</body>
</html>
Aşağıda, HTML belgesinde betik işlevini çağırmak için WPF uygulaması gösterilmektedir.
private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)
{
// Make sure the HTML document has loaded before attempting to
// invoke script of the document page. You could set loadCompleted
// to true when the LoadCompleted event on the WebBrowser fires.
if (this.loadCompleted)
{
try
{
this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters");
}
catch (Exception ex)
{
string msg = "Could not call script: " +
ex.Message +
"\n\nPlease click the 'Load HTML Document with Script' button to load.";
MessageBox.Show(msg);
}
}
}
Açıklamalar
InvokeScript(String) uygulayan belge yüklenmeden önce çağrılmamalıdır. Olayı işleyerek LoadCompleted belgenin yüklenmesinin ne zaman tamamlandığını algılayabilirsiniz.
Şunlara uygulanır
InvokeScript(String, Object[])
Şu anda yüklü olan belgede tanımlanan bir betik işlevini yürütür.
public:
System::Object ^ InvokeScript(System::String ^ scriptName, ... cli::array <System::Object ^> ^ args);
[System.Security.SecurityCritical]
public object InvokeScript(string scriptName, params object[] args);
public object InvokeScript(string scriptName, params object[] args);
[<System.Security.SecurityCritical>]
member this.InvokeScript : string * obj[] -> obj
member this.InvokeScript : string * obj[] -> obj
Public Function InvokeScript (scriptName As String, ParamArray args As Object()) As Object
Parametreler
- scriptName
- String
Yürütülecek betik işlevinin adı.
- args
- Object[]
Betik işlevine geçirecek parametreler.
Döndürülenler
Etkin Betik çağrısı tarafından döndürülen nesne.
- Öznitelikler
Özel durumlar
Örnek WebBrowser artık geçerli değil.
Temel alınan yerel WebBrowser başvuru alınamadı.
Betik işlevi yok.
Örnekler
Aşağıdaki örnekte, kullanarak InvokeScript(String, Object[])bir belgedeki betik işlevlerinin bir uygulamadan nasıl çağrıldığı gösterilmektedir. Bu örnekte betik işlevleri parametre gerektirir.
Aşağıda, WPF'den çağrılacak betik işlevlerini uygulayan belge yer alır.
<html>
<head>
<script type="text/javascript">
// Function Without Parameters
function JavaScriptFunctionWithoutParameters()
{
outputID.innerHTML = "JavaScript function 'called: " + message + ".";
}
</script>
</head>
<body>
<div id="outputID" style="color:Red; font-size:16">
Hello from HTML document with script!
</div>
</body>
</html>
Aşağıda, HTML belgesindeki betik işlevlerini çağırmak için WPF uygulaması gösterilmektedir.
private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)
{
// Make sure the HTML document has loaded before attempting to
// invoke script of the document page. You could set loadCompleted
// to true when the LoadCompleted event on the WebBrowser fires.
if (this.loadCompleted)
{
try
{
this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters", this.messageTextBox.Text);
}
catch (Exception ex)
{
string msg = "Could not call script: " +
ex.Message +
"\n\nPlease click the 'Load HTML Document with Script' button to load.";
MessageBox.Show(msg);
}
}
}
Açıklamalar
InvokeScript(String, Object[]) uygulayan belge yüklenmeden önce çağrılmamalıdır. Olayı işleyerek LoadCompleted belgenin yüklenmesinin ne zaman tamamlandığını algılayabilirsiniz.
Çağırdığınız betikte yeterli parametre değeri geçirmezseniz, değerleri geçirmediğiniz parametreler tanımsız değere sahip olur. Çok fazla parametre değeri geçirirseniz, fazla değerler yoksayılır.