你能在WPF应用程序中使用jQuery吗?

时间:2014-01-31 14:18:14

标签: c# jquery .net wpf

我在过去几个月里一直在创建一个WPF应用程序,我想在我的Application中添加动画的实现。我之前已经告诉过jQuery是一个很好的Javascript库用于动画。

问题是在浏览abit后,互联网上的内容并不多,让我知道这是否可行。

我对jQuery很新,所以我不会太了解。如果在WPF中jQuery是不可能的,那么是什么?

2 个答案:

答案 0 :(得分:4)

从技术上讲,你可以在WPF中使用jQuery。只是不是你可能想要的方式。 使用web browser control,您可以从本地或远程源加载html,css和javascript。

请注意*我没有从头开始做这个例子。它来自this site

在xaml中添加控件

<WebBrowser x:Name="wbMain" Margin="30"></WebBrowser>

并在代码中

wbMain.Navigate(new Uri("c:/MyFileThatUsesJqueryAndHasJqueryAsARef.htm"));

此外,两者之间的通信也是可能的,但确实需要一些工作。 您必须创建具有完全信任安全性的com可见类


[PermissionSet(SecurityAction.Demand, Name = "FullTrust")]
[ComVisible(true)]
public class ObjectForScriptingHelper
{
    Mainwindow mExternalWPF;
    public ObjectForScriptingHelper(Window1w)
    {
        this.mExternalWPF = w;
    }
    public void InvokeMeFromJavascript(string jsscript)
    {
        this.mExternalWPF.tbMessageFromBrowser.Text = string.Format("Message :{0}", jsscript);
    }

}

有了这个,你可以在你的班级中创建一个实例,并通过像

这样的javascript访问它
<input type="text" id="txtMessage" />
<input type="button" value="InvokeMe" onclick="javascript:window.external.InvokeMeFromJavascript(document.getElementById('txtMessage').value);" />

请查看文章,了解更多您可以做的事情。

<强>注意事项

  • 这很可能不是新桌面应用程序的最佳选择。如果仅仅是出于熟悉使用现有工具的问题,那么我会考虑其他方法,例如学习WPF或寻找像this questionone of {{3}这样的方法。 }

如果您实际上使用html和javascript编码的现有代码库与离线应用程序一样多,您可以利用此方法通过所有方式回收您现有的代码库,或者查看此方法或其中一个提到的其他方法,如使用these

答案 1 :(得分:2)

没有。 JQuery是一个javascript框架,主要在浏览器中运行。 WPF是一个.Net演示文稿框架,可在浏览器外部的桌面上运行。

然而,您可以将WPF本身用于动画。有些人甚至会说它更容易。