WPF WebBrowser KeyUp未被调用

时间:2018-11-04 16:42:45

标签: c# wpf winforms

我正在为我的公司制作自定义WPF HTMLEditor。我以https://www.codeproject.com/tips/870549/csharp-wpf-wysiwyg-html-editor为例。我大部分时间都在工作。我遇到的唯一问题是从WebBrowser控件中获取更新的文本,并将其放入第二个控件中。

该控件允许用户向用户发送电子邮件或生成Word文档时填充的文本添加变量。例如,用户可以键入“总金额为_Amount_”,然后在生成的文档中显示“总金额为$ 555”。实际上,它与Stackoverflow中“问问题”的工作原理非常相似。

当用户键入WebBrowser控件时,我需要将HTML文本放入第二个控件中进行显示。我试图使用WebBrowser的KeyUp事件,但是根本没有调用该事件,而且我不确定为什么。

这是我可以显示的一些代码。

XAML

<WebBrowser x:Name="WebBrowser" KeyUp="WebBrowser_KeyUp" Initialized="WebBrowser_OnInitialized" Grid.Row="1" Visibility="Visible">
</WebBrowser>

C#

private void WebBrowser_OnInitialized(object theSender, EventArgs theE) {
        if (myDoc != null) {
            myDoc.clear();
        }

        Script.HideScriptErrors(WebBrowser, true);
}

public void LoadTextIntoWebBrowser(string theText) {
        if (myDoc != null) {
            myDoc.clear();
        }

        string html = "<html><head></head><body>" + theText + "</body></html>";
        WebBrowser.NavigateToString(html);

        myDoc = WebBrowser.Document as HTMLDocument;
        myDoc.designMode = "On";
}

private void WebBrowser_OnKeyUp(object theSender, KeyEventArgs theE) {
        //Do some stuff here.
}

最后。这是一个Winforms项目,我正在使用ElementHost将WPF控件放入其中。我想使用WPF,因为我们希望在将来的某个时候将应用程序切换到WPF,并且我不想在将来再次进行切换。

0 个答案:

没有答案
相关问题