You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
2.2 KiB

using BBWYB.Client.APIServices;
using Microsoft.Extensions.DependencyInjection;
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
namespace BBWYB.Client.Views.WebB
{
/// <summary>
/// WebB.xaml 的交互逻辑
/// </summary>
public partial class WebB : Page
{
private WebView2Manager w2m;
private bool isNavigated;
private IList<string> managerDepartment;
private MdsApiService mdsApiService;
private ShopService shopService;
private GlobalContext globalContext;
public WebB()
{
InitializeComponent();
this.Loaded += WebB_Loaded;
this.Unloaded += WebB_Unloaded;
}
private void WebB_Unloaded(object sender, RoutedEventArgs e)
{
grid.Children.Remove(w2m.wb2);
//w2m.wb2.Dispose();
w2m.Close();
}
private void WebB_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
var sp = (App.Current as App).ServiceProvider;
using (var s = sp.CreateScope())
{
w2m = s.ServiceProvider.GetRequiredService<WebView2Manager>();
globalContext = s.ServiceProvider.GetRequiredService<GlobalContext>();
mdsApiService = s.ServiceProvider.GetRequiredService<MdsApiService>();
shopService = s.ServiceProvider.GetRequiredService<ShopService>();
}
var url = "http://qtbbwy.qiyue666.com";
w2m.CoreWebView2InitializationCompleted = (e) =>
{
w2m.wb2.CoreWebView2.AddHostObjectToScript("qtbbwybContext", this.globalContext);
isNavigated = true;
w2m.wb2.CoreWebView2.Navigate(url);
};
w2m.Init();
w2m.wb2.SetValue(Grid.RowProperty, 1);
w2m.wb2.Margin = new Thickness(1, 0, 1, 0);
//grid.Children.Clear();
grid.Children.Add(w2m.wb2);
if (w2m.IsInitializationCompleted && !isNavigated)
{
w2m.wb2.CoreWebView2.Navigate(url);
//w2m.wb2.CoreWebView2.NavigateToString(content);
isNavigated = true;
}
}
}
}