Files
wcs/货架标准上位机/Views/Windows/TipView.xaml.cs
2024-10-31 13:57:24 +08:00

117 lines
4.0 KiB
C#

using WCS管理系统.ViewModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Media;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
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.Shapes;
namespace WCS管理系统
{
/// <summary>
/// 提示框
/// </summary>
public partial class TipView : HandyControl.Controls.Window
{
public TipView()
{
InitializeComponent();
}
private void closeClick(object sender, RoutedEventArgs e)
{
this.Close();
}
/// <summary>
/// 显示提示框
/// </summary>
/// <param name="content">内容</param>
/// <param name="isVisCloseBut">界面右上角是否显示关闭按钮</param>
/// <returns>点击的按钮文本</returns>
public static string Show(string content, bool isVisCloseBut = true, Window owner = null)
{
return Show(content, string.Empty, isVisCloseBut);
}
/// <summary>
/// 显示提示框
/// </summary>
/// <param name="content">内容</param>
/// <param name="title">标题</param>
/// <param name="isVisCloseBut">界面右上角是否显示关闭按钮</param>
/// <returns>点击的按钮文本</returns>
public static string Show(string content, string title, bool isVisCloseBut = true, Window owner = null)
{
return Show(content, title, new string[] { "确认" }, isVisCloseBut);
}
/// <summary>
/// 显示提示框
/// </summary>
/// <param name="content">内容</param>
/// <param name="buttons">按钮内容</param>
/// <param name="isVisCloseBut">界面右上角是否显示关闭按钮</param>
/// <returns>点击的按钮文本</returns>
public static string Show(string content, IEnumerable<string> buttons, bool isVisCloseBut = true, Window owner = null)
{
return Show(content, string.Empty, buttons, isVisCloseBut);
}
/// <summary>
/// 显示提示框
/// </summary>
/// <param name="content">内容</param>
/// <param name="title">标题</param>
/// <param name="buttons">按钮内容</param>
/// <param name="isVisCloseBut">界面右上角是否显示关闭按钮</param>
/// <returns>点击的按钮文本</returns>
public static string Show(string content, string title, IEnumerable<string> buttons, bool isVisCloseBut = true, Window owner = null)
{
TipView? tipView;
string clikename = string.Empty;
Application.Current.Dispatcher.Invoke(new Action(() =>
{
tipView = new TipView();
tipView.DataContext = new { Title = title, Content = content, IsClose = isVisCloseBut };
tipView.spacingPanel.Children.Clear();
foreach (var item in buttons)
{
Button button = new Button()
{
Content = item,
};
button.Click += (s, e) =>
{
clikename = ((Button)s).Content.ToString();
tipView.Close();
};
tipView.spacingPanel.Children.Add(button);
}
tipView.Owner = owner == null ? System.Windows.Application.Current.MainWindow : owner;
tipView.ShowDialog();
tipView = null;
}));
return clikename;
}
private void previewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
DragMove();
}
}
}