在Vistua Studio C#中如何禁用文本框的复制,粘贴,剪切及选中功能?

如果需要下载控件或其他,请注明名称和地址,谢谢!!!

1.不允许向文本框粘贴内容:
private void TextPass_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = IsPaste;
}
bool IsPaste = false;
private void TextPass_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode.ToString().ToUpper() == "V")
{
IsPaste = true;
}
else
{
IsPaste = false;
}
}
当按下ctrl+v的时候把标记变量IsPaste设置为true,然后在KeyPress事件中将这个true值设置给e.Handler就可以当ctrl+v没有按下过了。这样就禁用了键盘进行复制和粘贴。
2.禁用掉对文本框点鼠标右键,因为在文本框内点鼠标右键一样在弹出菜单里进行复制和粘贴的操作。
private void TextPass_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
TextPass.ContextMenu = new ContextMenu();
}
}
当点鼠标右键时,TextPass.ContextMenu = new ContextMenu()就不会弹出右键菜单了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-07-14

    不允许向文本框粘贴内容:
    private void TextPass_KeyPress(object sender, KeyPressEventArgs e)
            {
                e.Handled = IsPaste;
            }
            bool IsPaste = false;
            private void TextPass_KeyDown(object sender, KeyEventArgs e)
            {
                if (e.Control && e.KeyCode.ToString().ToUpper() == "V")
                {
                    IsPaste = true;
                }
                else
                {
                    IsPaste = false;
                }
            }
    当按下ctrl+v的时候把标记变量IsPaste设置为true,然后在KeyPress事件中将这个true值设置给e.Handler就可以当ctrl+v没有按下过了。这样就禁用了键盘进行复制和粘贴。
    2.禁用掉对文本框点鼠标右键,因为在文本框内点鼠标右键一样在弹出菜单里进行复制和粘贴的操作。
    private void TextPass_MouseDown(object sender, MouseEventArgs e)
            {
                if (e.Button == MouseButtons.Right)
                {
                    TextPass.ContextMenu = new ContextMenu();
                }
            }
    当点鼠标右键时,TextPass.ContextMenu = new ContextMenu()就不会弹出右键菜单了。

设置文本框的ShortcustsEnabled属性为FALSE,可以有效地禁用控件中鼠标右键菜单功能和Ctrl+V快捷的粘贴功能,同时还可以禁用Ctrl+C快捷键,禁止复制文本框中的文本内容。

第2个回答  2013-08-12
文本框或者RichTextBox都有Copy,Cut,Paste方法,可以直接调用

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网