我已经声明了一个带有粘贴命令绑定的WPF文本框:
<TextBox x:Name="txtMsg">
<TextBox.CommandBindings>
<CommandBinding Command="ApplicationCommands.Paste" Executed="TxtMsg_OnPaste"/>
</TextBox.CommandBindings>
</TextBox>
我的代码隐藏是
private void TxtMsg_OnPaste(object sender, ExecutedRoutedEventArgs e)
{
if (Clipboard.ContainsText())
{
// Let the textbox paste text its normal way
// This code is called, but the textbox doesn't paste anything!
e.Handled = false;
}
else
{
// My logic for other clipboard formats
// ...
e.Handled = true;
}
}
问题是设置e.Handled = false不会导致文本框粘贴任何内容。剪贴板包含文本时没有粘贴任何内容!
在这种情况下,如何让WPF文本框正常处理粘贴命令?
答案 0 :(得分:0)
调用TextBox上的Paste()方法。或者您可以获取文本并自己设置 - 相同的区别。