School Commit Init
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
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 Log_In
|
||||
{
|
||||
public partial class Window1 : Window
|
||||
{
|
||||
public Window1()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
|
||||
public class PasswordBoxMonitor : DependencyObject
|
||||
{
|
||||
public static bool GetIsMonitoring(DependencyObject obj)
|
||||
{
|
||||
return (bool)obj.GetValue(IsMonitoringProperty);
|
||||
}
|
||||
|
||||
public static void SetIsMonitoring(DependencyObject obj, bool value)
|
||||
{
|
||||
obj.SetValue(IsMonitoringProperty, value);
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty IsMonitoringProperty =
|
||||
DependencyProperty.RegisterAttached("IsMonitoring", typeof(bool), typeof(PasswordBoxMonitor), new UIPropertyMetadata(false, OnIsMonitoringChanged));
|
||||
|
||||
public static int GetPasswordLength(DependencyObject obj)
|
||||
{
|
||||
return (int)obj.GetValue(PasswordLengthProperty);
|
||||
}
|
||||
|
||||
public static void SetPasswordLength(DependencyObject obj, int value)
|
||||
{
|
||||
obj.SetValue(PasswordLengthProperty, value);
|
||||
}
|
||||
|
||||
public static readonly DependencyProperty PasswordLengthProperty =
|
||||
DependencyProperty.RegisterAttached("PasswordLength", typeof(int), typeof(PasswordBoxMonitor), new UIPropertyMetadata(0));
|
||||
|
||||
private static void OnIsMonitoringChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
|
||||
{
|
||||
var pb = d as PasswordBox;
|
||||
if (pb == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if ((bool)e.NewValue)
|
||||
{
|
||||
pb.PasswordChanged += PasswordChanged;
|
||||
}
|
||||
else
|
||||
{
|
||||
pb.PasswordChanged -= PasswordChanged;
|
||||
}
|
||||
}
|
||||
|
||||
private static void PasswordChanged(object sender, RoutedEventArgs e)
|
||||
{
|
||||
var pb = sender as PasswordBox;
|
||||
if (pb == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
SetPasswordLength(pb, pb.Password.Length);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user