[英]How to call a c# method from ihtmlelement button click in BHO using c#?
我正在BHO中为IE编程。我已经创建了一个button.I想要在该按钮中单击click.how来调用方法。
这是我的代码:
htmlFormCollection = objDocument.getElementsByTagName("*");
if (htmlFormCollection.length > 0)
{
foreach (IHTMLElement ihtmlCollectionClass in htmlFormCollection)
{
htmlElementsCollection = (IHTMLElementCollection)ihtmlCollectionClass.all;
foreach (IHTMLElement ihtmlBtnAddClass in htmlElementsCollection)
{
if (ihtmlBtnAddClass.className == "n1tfz")
{
if (flagVal)
{
IHTMLDOMNode divNode = (IHTMLDOMNode)ihtmlBtnAddClass;
var tbl = objDocument.createElement("table");
var tblBody = objDocument.createElement("tbody");
var tabr = objDocument.createElement("tr");
var tabd = objDocument.createElement("td");
var newDiv=objDocument.createElement("div");
newDiv.setAttribute("id","innerdiv11");
var Encryptbutton = objDocument.createElement("input");
Encryptbutton.setAttribute("type", "button");
Encryptbutton.setAttribute("value", "Encrypt");
Encryptbutton.setAttribute("id", "Encr1");
Encryptbutton.style.backgroundColor = "#4d90fe";
Encryptbutton.style.border = "#4787ed";
Encryptbutton.style.color = "White";
Encryptbutton.style.fontSize = "11px";
Encryptbutton.style.fontFamily = "arial,sans-serif";
Encryptbutton.style.width = "47pt";
//Encryptbutton.onclick = ComposeEncrypt();
//Encryptbutton.click();
IHTMLDOMNode newDivVal = (IHTMLDOMNode)newDiv;
IHTMLDOMNode tabdVal = (IHTMLDOMNode)tabd;
IHTMLDOMNode tabrVal = (IHTMLDOMNode)tabr;
IHTMLDOMNode tblBodyVal = (IHTMLDOMNode)tblBody;
IHTMLDOMNode tblVal = (IHTMLDOMNode)tbl;
newDivVal.appendChild((IHTMLDOMNode)Encryptbutton);
tabdVal.appendChild((IHTMLDOMNode)newDivVal);
tabrVal.appendChild((IHTMLDOMNode)tabdVal);
tblBodyVal.appendChild((IHTMLDOMNode)tabrVal);
tblVal.appendChild((IHTMLDOMNode)tblBodyVal);
IHTMLDOMNode divNode1 = (IHTMLDOMNode)ihtmlBtnAddClass;
IHTMLElement head = (IHTMLElement)((IHTMLElementCollection)objDocument.all.tags("head")).item(null, 0);
divNode.insertBefore((IHTMLDOMNode)Encryptbutton, divNode.firstChild);
//Encryptbutton.InvokeMember("click");
flagVal = false;
}
}
if (!flagVal)
break;
}
}
}
方法:
public void myfunc()
{
Messgebox.show("hai");
}
我想在Encryptbutton click事件中调用myfunc()。如何调用它。
谢谢三句
我知道了。
HTMLButtonElementEvents_Event htmlButtonEvent = Encryptbutton1 as HTMLButtonElementEvents_Event;
htmlButtonEvent.onclick += new HTMLButtonElementEvents_onclickEventHandler(ComposeEncrypt_onclick);
方法:
bool ComposeEncrypt_onclick()
{
MessageBox.show("hai");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.