【已解决】C#中给TextBox控件增加双击全选的效果

【问题】

先要提醒的是:

C#的winform程序中,普通的TextBox,如果其中的内容是字母数字下划线等,非特殊的字符的话,双击,则可以自动全选内容的。

但是此处我的一个C#的winform:

downloadSonstasteMusic(下载Songtaste歌曲) v1.7 – 下载Songtaste(ST)中正在播放的歌曲/单首歌曲/整张专辑

对于其中一个TextBox中,由于内容特殊,带问号等特殊字符:

http://www.songtaste.com/playmusic.php?song_id=3202778,3222939,3253692,3254276

导致双击的时候,只能选择部分的内容:

double click only choose some

希望是,双击后,选择全部的内容:

mouse drag to select all

 

【解决过程】

1.参考:

TextBox获取输入焦点时自动全选的实现方法

看到TextBox有SelectAll的方法。

加上之前就看到,TextBox本身支持DoubleClick事件,所以,就可以去试试了。

2.选择TextBox后可以看到对应的DoubleClick事件:

choose textbox can see doubleclick event

双击后,去实现,如下:

        private void txbMultiPlayUrl_DoubleClick(object sender, EventArgs e)
        {
            txbMultiPlayUrl.SelectAll();
        }

然后运行看看效果,果然是可以的:

use selectall can indeed choose all content

 

【总结】

双击TextBox的时候,想要对于内容中即使含特殊字符,原先无法双击自动全选时,也要实现双击自动全选的效果的话,则可以在DoubleClick事件中,添加上对应的textBox1.SelectAll(),即可。

如下:

private void txbMultiPlayUrl_DoubleClick(object sender, EventArgs e)
{
    txbMultiPlayUrl.SelectAll();
}


发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量