[英]Universal Apps Windows Phone TextBox.SelectAll() with copy enabled does not work
在Store Apps / Universal Apps / Windows Phone 8.1 Visual Studio 2013项目中,如何以编程方式选择TextBox中的所有文本,并启用上下文复制图标菜单,如下面的屏幕截图所示:
一只忙碌的猫http://texttophone.free.fr/selectallwithcopyenabled.png
需要在上下文中显示文本,其中用户很可能想要将其复制到剪贴板中。
以下测试不起作用:
XAML
<TextBox x:Name="MyTextBox" Grid.Row="0"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
Text="The text I want to select"
IsReadOnly="True"
IsEnabled="True"
GotFocus="MyTextBox_GotFocus"></TextBox>
<Button x:Name="ButtonSelectAll" Grid.Row="1"
Content="Select All"
HorizontalAlignment="Center"
Click="ButtonSelectAll_Click"></Button>
C#
private void ButtonSelectAll_Click(object sender, RoutedEventArgs e)
{
MyTextBox.SelectAll();
// MyTextBox.Focus(FocusState.Programmatic);
}
private void MyTextBox_GotFocus(object sender, RoutedEventArgs e)
{
MyTextBox.SelectAll();
}
试试Click事件什么都不做。 尝试GotFocus事件选择所有文本,但上下文复制图标菜单和两个句柄不显示。 如果你添加Click方法“text.Focus(FocusState.Programmatic);” 然后选择文本但不显示复制图标。 不幸的是,如果您用手指触摸此文本并打算出现“复制图标”,则会丢失选择。
@efdummy试试这个:
private void ButtonSelectAll_Click(object sender, RoutedEventArgs e)
{
MyTextBox.Select(0, MyTextBox.Text.Length);
string selectedText = MyTextBox.SelectedText;
DataPackage myPackage = new DataPackage();
myPackage.SetText(selectedText);
Clipboard.SetContent(myPackage);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.