Я работаю над приложением wpf, которое содержит основные Window.xaml
с DataGrid
на нем и в статьях внутри курса, и я должен сделать следующее, если пользователь выбирает статью и нажмите «/», чем я должен позволить ему отредактировать цену - разблокировать поле с ценой, и когда пользователь будет сделан, он должен нажать enter, а после этого я должен проверить, что он введен, чтобы я мог обновить новую цену для этой статьи ,Как обнаружить косую черту и если условие выполнено, проверьте для ввода ключа C# WPF
Прежде всего, так я проверяю: «/» нажал, потому что я не мог бороться с правильными OEM для этого ключа, и я боюсь, что может произойти, когда пользователь меняет язык на своей клавиатуре , поэтому я сделал это на этом пути.
private void Window_PreviewTextInput_1(object sender, TextCompositionEventArgs e)
{
if (e.Text == "/")
{
if (globalTemp != null)
{
txtPrice.IsEnabled = true;
}
}
}
После Даю Oportunity для пользователя, чтобы изменить цену, я должен обновить цену статьи на клавишу ввода, так как я мог проверить после этого условия if (e.Text == "/")
будет ввести также щелкнул, потому что, как я увидел, что нет в этом нет e.Key
TextCompositionEventArgs e
...
EDIT:
может быть, я мог бы просто прикрепить новое событие здесь, так что на самом деле я мог бы иметь два события, сначала один, чтобы обнаружить «/» и разблокировать txtPrice, и еще один в обновите его, если нажата клавиша, другое событие может выглядеть следующим образом:
private void txtPrice_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Return)
{
// UPDATE PRICE HERE
}
}
спасибо ребята Приветствие
ли вы положить точка останова в событии KeyDown и посмотреть, что было в ключевом коде события, когда вы нажимаете «косую черту» OEM? – Abion47
@ Abion47 как я мог это сделать? как я могу проверить код «OEM» Fwd Slash? когда я поймаю if (e.Text == "/") {что я должен здесь читать, для какого свойства читать «OEM» CODE}? –
@ Abion47 проверьте обновление моего вопроса. –