0

我在我的 Windows Phone 应用程序中使用只读TextBox来显示可复制的文本。现在我想点击TextBox一个字符,即用户点击的那个字符。

下面的代码正确地选择了第一个字符,但一秒钟后选择被重置(也就是说,Windows Phone 自动选择了点击位置的整个单词):

private void TextBox_Tap(object sender, System.Windows.Input.GestureEventArgs e) {
    TextBox box = sender as TextBox;
    Dispatcher.BeginInvoke(delegate { box.Select(0, 1); });
    //simplified example: select only the first character.
}

不过,这在 WP7 中运行良好。
关于如何恢复旧行为的任何想法?

4

1 回答 1

0

我不确定这将如何与您拥有的其余代码交互,但您应该能够使用SelectionChangedGotFocus上的事件的组合TextBox来替换以前使用的Tap处理程序来停止选择被重置用户。

更新 这不适合这种情况。

从我的设备上的快速播放来看,看起来像MouseLeftButtonUp之类的其他事件导致了这个,而不是 Tap。尝试将您的代码移至该事件。

于 2013-03-28T18:49:34.170 回答