Exemplo n.º 1
0
 /// <summary>
 /// Registers C# class in V8 repository, this is called once per session.
 /// </summary>
 /// <param name="sender">Browser.</param>
 /// <param name="e">Event arguments.</param>
 private static void JavascriptObjectRepository_ResolveObject(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
 {
     if (e.ObjectName == JsBridgeName)
     {
         e.ObjectRepository.Register(JsBridgeName, new TestJsRepo(), true);
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// 绑定JS对象事件
        /// </summary>
        private void JavascriptObjectRepository_ResolveObject(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
        {
            var repo = e.ObjectRepository;

            switch (e.ObjectName)
            {
            case "bound":
                repo.Register("bound", new BoundObject()
                {
                    OnOk = OnOk, OnClose = OnClose, OnClear = OnClear
                }, isAsync: false, options: BindingOptions.DefaultBinder);

                break;

            case "boundAsync":
                repo.Register("boundAsync", new BoundObject()
                {
                    OnOk = OnOk, OnClose = OnClose, OnClear = OnClear
                }, isAsync: true, options: BindingOptions.DefaultBinder);
                break;

            default:
                break;
            }
        }
        private void JavascriptObjectRepository_ResolveObject(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
        {
            //Trace.WriteLine($"=== Resolve request for: {e.ObjectName}");

            var objName = e.ObjectName;

            var ps = objName.Split('_');

            if (ps.Length < 2)
            {
                return;
            }

            var identifier = long.Parse(ps[1]);

            if (CBrowser.JavascriptObjectRepository.IsBound(objName))
            {
                CBrowser.JavascriptObjectRepository.UnRegister(objName);
                //Trace.WriteLine($"=== Unregister: {objName}");
            }

            //Trace.WriteLine($"=== Register: {objName}");
            var fr      = _framesDict[identifier];
            var syncObj = fr.SyncObject;

            CBrowser.JavascriptObjectRepository.Register(syncObj.BindName, syncObj, true);
        }
Exemplo n.º 4
0
 private void JavascriptObjectRepository_ResolveObject(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
 {
     switch (e.ObjectName)
     {
     case "solver":
         e.ObjectRepository.Register("solver", solver, true);
         break;
     }
 }
Exemplo n.º 5
0
        private void JavascriptObjectRepository_ResolveObject(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
        {
            var repo = e.ObjectRepository;

            if (e.ObjectName == "CS")
            {
                BindingOptions bindingOptions = BindingOptions.DefaultBinder;
                bindingOptions.CamelCaseJavascriptNames = false;
                repo.Register("CS", new AppBinding(), isAsync: false, options: bindingOptions);
            }
        }
Exemplo n.º 6
0
 private void JavascriptObjectRepository_ObjectBoundInJavascript(object sender, CefSharp.Event.JavascriptBindingEventArgs e)
 {
     var x = e.ObjectName;
 }