mirror of
https://github.com/wismna/ModernKeePass.git
synced 2025-10-03 15:40:18 -04:00
56 lines
1.9 KiB
C#
56 lines
1.9 KiB
C#
using System;
|
|
using Windows.UI.Xaml;
|
|
using Windows.UI.Xaml.Controls;
|
|
|
|
namespace ModernKeePass.Controls
|
|
{
|
|
public class TextBoxWithButton : TextBox
|
|
{
|
|
public event EventHandler<RoutedEventArgs> ButtonClick;
|
|
|
|
public string ButtonSymbol
|
|
{
|
|
get => (string)GetValue(ButtonSymbolProperty);
|
|
set => SetValue(ButtonSymbolProperty, value);
|
|
}
|
|
public static readonly DependencyProperty ButtonSymbolProperty =
|
|
DependencyProperty.Register(
|
|
"ButtonSymbol",
|
|
typeof(string),
|
|
typeof(TextBoxWithButton),
|
|
new PropertyMetadata("", (o, args) => { }));
|
|
|
|
public string ButtonTooltip
|
|
{
|
|
get => (string)GetValue(ButtonTooltipProperty);
|
|
set => SetValue(ButtonTooltipProperty, value);
|
|
}
|
|
public static readonly DependencyProperty ButtonTooltipProperty =
|
|
DependencyProperty.Register(
|
|
"ButtonTooltip",
|
|
typeof(string),
|
|
typeof(TextBoxWithButton),
|
|
new PropertyMetadata(string.Empty, (o, args) => { }));
|
|
|
|
public bool IsButtonEnabled
|
|
{
|
|
get => (bool)GetValue(IsButtonEnabledProperty);
|
|
set => SetValue(IsButtonEnabledProperty, value);
|
|
}
|
|
public static readonly DependencyProperty IsButtonEnabledProperty =
|
|
DependencyProperty.Register(
|
|
"IsButtonEnabled",
|
|
typeof(bool),
|
|
typeof(TextBoxWithButton),
|
|
new PropertyMetadata(true, (o, args) => { }));
|
|
|
|
protected override void OnApplyTemplate()
|
|
{
|
|
base.OnApplyTemplate();
|
|
if (GetTemplateChild("ActionButton") is Button actionButton)
|
|
{
|
|
actionButton.Click += (sender, e) => ButtonClick?.Invoke(sender, e);
|
|
}
|
|
}
|
|
}
|
|
} |