当我按下 Enter 键时,KeyDown
TextBox
的事件如果它的 AcceptsReturn
不会被触发属性设置为true。如何识别 TextBox
的 Enter 键何时被按下与 AcceptsReturn
设置为 true
?
最佳答案
如果您希望完全禁用新行(如@ruffin 想要的那样),请通过隐藏代码订阅 PreviewKeyDown 事件并设置 e.Handled
至 true
.
public MyControl()
{
InitializeComponent();
var keyeventHandler = new KeyEventHandler(TextBox_KeyDown);
uiText.AddHandler(PreviewKeyDownEvent, keyeventHandler, handledEventsToo: true);
}
private void TextBox_KeyDown(object sender, KeyRoutedEventArgs e)
{
if (e.Key == Windows.System.VirtualKey.Enter)
e.Handled = true;
}
关于uwp - UWP 中的 TextBox 未触发 KeyDown 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36938437/