20240301_JSEQ_upperpc/JiangsuEarthquakeJM/JiangsuEarthquake/MainWindow.xaml.cs

127 lines
4.1 KiB
C#
Raw Normal View History

using JiangsuEarthquake.Base;
using JiangsuEarthquake.ViewModels;
using System.Text;
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 System.Windows.Threading;
namespace JiangsuEarthquake
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
static public MainViewModel mainViewModel { set; get; } = new MainViewModel();
private DispatcherTimer ShowTimer;
public MainWindow()
{
InitializeComponent();
this.DataContext = mainViewModel;
this.MaxHeight = SystemParameters.PrimaryScreenHeight;//防止最大化时系统任务栏被遮盖
//添加timer
ShowTimer = new System.Windows.Threading.DispatcherTimer();
ShowTimer.Tick += new EventHandler(ShowTime);
ShowTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
ShowTimer.Start();
}
/// <summary>
/// 时间、日期显示
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public void ShowTime(object sender, EventArgs e)
{
this.DataTime.Text = "";
this.Date.Text = "";
this.Week.Text = "";
//获得年月日
this.DataTime.Text += " " + DateTime.Now.ToString("HH:mm:ss"); //yyyy年MM月dd日
this.Date.Text += " " + DateTime.Now.ToString("yyyy-MM-dd");
this.Week.Text += System.DateTime.Today.ToString("dddd", new System.Globalization.CultureInfo("zh-CN"));
}
/// <summary>
/// 主窗体关闭
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Click(object sender, RoutedEventArgs e)
{
//主窗体关闭之前调用通信断开
if(mainViewModel.clientModel1!=null&&mainViewModel.clientModel1.IsConnected)
mainViewModel.clientModel1.DisConnect();
if (mainViewModel.clientModel2 != null && mainViewModel.clientModel2.IsConnected)
mainViewModel.clientModel2.DisConnect();
if (mainViewModel.serverModel1 != null && mainViewModel.serverModel1.IsOpened)
mainViewModel.serverModel1.DoStop();
if (mainViewModel.serverModel2 != null && mainViewModel.serverModel2.IsOpened)
mainViewModel.serverModel2.DoStop();
this.Close();
}
/// <summary>
/// 左键点击顶栏拖动窗体
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Border_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
if (e.LeftButton == MouseButtonState.Pressed)
this.DragMove();
//双击最大化
//switch (e.ClickCount)
//{
// case 2:
// {
// WindowState = WindowState == WindowState.Maximized ? WindowState.Normal : WindowState.Maximized;
// break;
// }
//}
}
/// <summary>
/// 最小化按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MinButton_Click(object sender, RoutedEventArgs e)
{
this.WindowState = WindowState.Minimized;
}
/// <summary>
/// 最大化按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MaxButton_Click(object sender, RoutedEventArgs e)
{
this.WindowState = this.WindowState == WindowState.Maximized ? WindowState.Normal : WindowState.Maximized;
}
private void DetailButton_Click(object sender, RoutedEventArgs e)
{
}
}
}