Событию DataObject.Pasting в текстовом поле я хочу назначить функцию TextBoxPasting, которая находится в модели представления (шаблон MVVM). К сожалению, код не работает. Я использую библиотеку:
xmlns:behaviours="http://schemas.microsoft.com/xaml/behaviors".
Просмотр — код :
Код: Выделить всё
Код: Выделить всё
public class MechanicViewModel : ViewModelBase, IMechanicViewModel
{
private static readonly Regex _regex = new Regex("[^0-9.-]+");
public MechanicViewModel()
{
DataObjectPastingCommand = new DelegateCommand(TextBoxPasting);
}
public DelegateCommand DataObjectPastingCommand { get; private set; }
private static bool IsTextAllowed(string text)
{
return !_regex.IsMatch(text);
}
private void TextBoxPasting(DataObjectPastingEventArgs e)
{
if (e.DataObject.GetDataPresent(typeof(string)))
{
string text = (string)e.DataObject.GetData(typeof(string));
if (!IsTextAllowed(text))
{
e.CancelCommand();
}
}
else
{
e.CancelCommand();
}
}
}
Источник: https://stackoverflow.com/questions/781 ... ving-the-m