1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- using CefSharp;
- using CefSharp.Wpf;
- using CEFSharpWpf;
- namespace CEFSharpWPF
- {
- /// <summary>
- /// UcGplotShow.xaml 的交互逻辑
- /// </summary>
- public partial class UcGplotShow : UserControl
- {
- public string URL { get; set; } = "http://172.16.0.181:8888/#/demo";
- public UcGplotShow()
- {
- OneTimeLoad.Init();
- InitializeComponent();
- this.Loaded += UcGplotShow_Loaded;
- }
- private void UcGplotShow_Loaded(object sender, RoutedEventArgs e)
- {
- var re = new SgRequestHandle();
- webBrowser.RequestHandler = re;
- //webBrowser.Address = URL;
- }
- /// <summary>
- /// 重新加载页面
- /// </summary>
- /// <param name="url"></param>
- private void ReloadUrl(string url)
- {
- if (webBrowser.IsBrowserInitialized)
- {
- webBrowser.Address = URL;
- webBrowser.Load(url);
- }
- }
- /// <summary>
- /// 强制刷新
- /// </summary>
- public void Refresh()
- {
- if (webBrowser.IsBrowserInitialized)
- {
- webBrowser.Address = URL;
- webBrowser.Load(URL);
- }
- }
- public void Show(string url, string title = "")
- {
- URL = url;
- ReloadUrl(url);
- }
- #region 封装交互
- /*
- * 不想直接饮用程序集,将公开方法封装一遍
- */
- /// <summary>
- /// 获取浏览器选项
- /// </summary>
- public ChromiumWebBrowser Browser
- {
- get { return webBrowser; }
- }
- /// <summary>
- /// 注册绑定对象
- /// </summary>
- /// <param name="objName"></param>
- /// <param name="obj"></param>
- public void RegisterJsObject(string objName, object obj)
- {
- Browser.RegisterJsObject(objName, obj, new BindingOptions() {CamelCaseJavascriptNames = false});
- }
- /// <summary>
- /// 执行js函数
- /// </summary>
- /// <param name="fun"></param>
- public void ExecuteJsFun(string fun)
- {
- Browser.ExecuteScriptAsync(fun);
- }
- #endregion
- }
- }
|