C# 从正确的文本框中选择文本

标签 c# winforms textbox

我有一个带有多个文本框的 Windows 窗体应用程序。我正在尝试向其中添加右键单击复制和粘贴功能。我使用 ContextMenuStrip 添加了右键单击菜单。但是,我将此菜单用于应用程序中的 2 个不同文本框。当我从 1 个文本框中选择并突出显示一些文本,然后通过选择并突出显示另一个文本框中的文本来执行相同的操作时,它会复制两个文本框中的文本。我如何将它分开,以便它知道要从哪个文本框复制?

这是我的代码:

private void copyToolStripMenuItem_Click(object sender, EventArgs e)
        {
            string leadSelectedText = leadsTextBox.SelectedText;
            string resultSelectedText = resultTextBox.SelectedText;

            Console.WriteLine(leadSelectedText);
            Console.WriteLine(resultSelectedText);
        }

最佳答案

如果您想确定鼠标悬停在哪个文本框上,您可以尝试以下操作。

        if (leadsTextBox == GetChildAtPoint(MousePosition))
        {
            //copy from leads text
        }
        else if (resultTextBox == GetChildAtPoint(MousePosition))
        {
            //copy from results text
        }

如果鼠标不必悬停在要复制的文本框上,您始终可以存储上次单击的文本框。

Textbox lastClicked;

private void leadsTextbox_mouseDown()
{
   if (!string.IsNullOrEmpty(leadsTextbox.SelectText))
       lastClicked = leadsTextbox;
}

关于C# 从正确的文本框中选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33873557/

相关文章:

c# - 如何使用 Windows Store C++ 在没有窗口句柄的情况下渲染路径几何

c# - WPF 样式并未应用于所有预期的控件

java - 使用复选框和文本框作为小费计算器

javascript - 如何移动占位符文本以及 HTML 文本框的内容?

c# - System.Diagnostics.Debug 类是否有 TextWriter 接口(interface)?

c# - 如何在 MVVM WPF 应用程序中控制列表框的滚动位置

c# - ProgressBar 没有值(value),只是加载

c# - 关闭父对话框时关闭子对话框

c# - 如何将数据表内容显示到数据 GridView 中?

javascript - html 表单上不需要的自动填充