Initial clean upload

This commit is contained in:
ded_ikar
2026-04-22 16:45:35 +05:00
commit d0c4f7ad38
27 changed files with 2389 additions and 0 deletions
+87
View File
@@ -0,0 +1,87 @@
using System.Windows;
namespace QoSManager.Views
{
public partial class CustomMessageBox : Window
{
public MessageBoxResult Result { get; private set; }
public CustomMessageBox()
{
InitializeComponent();
DataContext = this;
}
public string Message
{
get { return (string)GetValue(MessageProperty); }
set { SetValue(MessageProperty, value); }
}
public static readonly DependencyProperty MessageProperty =
DependencyProperty.Register("Message", typeof(string), typeof(CustomMessageBox), new PropertyMetadata(""));
public static MessageBoxResult Show(string message, string title = "QoS Manager", MessageBoxButton buttons = MessageBoxButton.OK, MessageBoxImage icon = MessageBoxImage.None)
{
var messageBox = new CustomMessageBox
{
Title = title,
Message = message
};
// Сначала скрыть все кнопки
messageBox.OKButton.Visibility = Visibility.Collapsed;
messageBox.CancelButton.Visibility = Visibility.Collapsed;
messageBox.YesButton.Visibility = Visibility.Collapsed;
messageBox.NoButton.Visibility = Visibility.Collapsed;
// Настройка кнопок в зависимости от типа
switch (buttons)
{
case MessageBoxButton.OK:
messageBox.OKButton.Visibility = Visibility.Visible;
break;
case MessageBoxButton.OKCancel:
messageBox.OKButton.Visibility = Visibility.Visible;
messageBox.CancelButton.Visibility = Visibility.Visible;
break;
case MessageBoxButton.YesNo:
messageBox.YesButton.Visibility = Visibility.Visible;
messageBox.NoButton.Visibility = Visibility.Visible;
break;
case MessageBoxButton.YesNoCancel:
messageBox.YesButton.Visibility = Visibility.Visible;
messageBox.NoButton.Visibility = Visibility.Visible;
messageBox.CancelButton.Visibility = Visibility.Visible;
break;
}
messageBox.ShowDialog();
return messageBox.Result;
}
private void OKButton_Click(object sender, RoutedEventArgs e)
{
Result = MessageBoxResult.OK;
Close();
}
private void CancelButton_Click(object sender, RoutedEventArgs e)
{
Result = MessageBoxResult.Cancel;
Close();
}
private void YesButton_Click(object sender, RoutedEventArgs e)
{
Result = MessageBoxResult.Yes;
Close();
}
private void NoButton_Click(object sender, RoutedEventArgs e)
{
Result = MessageBoxResult.No;
Close();
}
}
}