WebBrowser.InvokeScript Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Végrehajt egy szkriptelési függvényt, amely az aktuálisan betöltött dokumentumban van definiálva.
Túlterhelések
| Name | Description |
|---|---|
| InvokeScript(String) |
Végrehajt egy szkriptfüggvényt, amelyet az aktuálisan betöltött dokumentum implementál. |
| InvokeScript(String, Object[]) |
Végrehajt egy szkriptfüggvényt, amely az aktuálisan betöltött dokumentumban van definiálva. |
InvokeScript(String)
Végrehajt egy szkriptfüggvényt, amelyet az aktuálisan betöltött dokumentum implementál.
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
Paraméterek
- scriptName
- String
A végrehajtandó szkriptfüggvény neve.
Válaszok
Az aktív szkriptelési hívás által visszaadott objektum.
Kivételek
A WebBrowser példány már nem érvényes.
A mögöttes natívra WebBrowser mutató hivatkozás nem kérhető le.
A szkriptfüggvény nem létezik.
Példák
Az alábbi példa bemutatja, hogyan hívhat meg egy szkriptfüggvényt egy dokumentumban egy WPF alkalmazásból InvokeScript(String) használatával. Ebben a példában a szkriptfüggvénynek nincsenek paraméterei.
Az alábbi HTML-dokumentum implementálja a WPF meghívandó szkriptfüggvényt.
<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>
Az alábbiakban a HTML-dokumentumban található szkriptfüggvény meghívására WPF implementáció látható.
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);
}
}
}
Megjegyzések
InvokeScript(String) nem hívható meg, mielőtt az azt megvalósító dokumentum betöltése befejeződött volna. Az esemény kezelésével észlelheti, hogy mikor fejeződött be egy LoadCompleted dokumentum betöltése.
A következőre érvényes:
InvokeScript(String, Object[])
Végrehajt egy szkriptfüggvényt, amely az aktuálisan betöltött dokumentumban van definiálva.
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
Paraméterek
- scriptName
- String
A végrehajtandó szkriptfüggvény neve.
- args
- Object[]
A szkriptfüggvénynek átadni kívánt paraméterek.
Válaszok
Az aktív szkriptelési hívás által visszaadott objektum.
- Attribútumok
Kivételek
A WebBrowser példány már nem érvényes.
A mögöttes natívra WebBrowser mutató hivatkozás nem kérhető le.
A szkriptfüggvény nem létezik.
Példák
Az alábbi példa bemutatja, hogyan hívhat meg szkriptfüggvényeket egy dokumentumban egy alkalmazás használatával InvokeScript(String, Object[]). Ebben a példában a szkriptfüggvények paramétereket igényelnek.
Az alábbi dokumentum implementálja a WPF meghívandó szkriptfüggvényeket.
<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>
Az alábbiakban a HTML-dokumentumban található szkriptfüggvények meghívására WPF implementációt mutatjuk be.
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);
}
}
}
Megjegyzések
InvokeScript(String, Object[]) nem hívható meg, mielőtt az azt megvalósító dokumentum betöltése befejeződött volna. Az esemény kezelésével észlelheti, hogy mikor fejeződött be egy LoadCompleted dokumentum betöltése.
Ha nem ad át elegendő paraméterértéket a megírt szkriptnek, azoknak a paramétereknek, amelyeket nem ad át az értékeknek, a nem definiált értékkel fognak rendelkezni. Ha túl sok paraméterértéket ad át, a rendszer figyelmen kívül hagyja a felesleges értékeket.