如何在VB.NET中从Active Control获取所选文本?

时间:2018-05-02 10:54:46

标签: vb.net textbox controls clipboard selectedtext

有没有办法只从Active Control中获取所选文本或突出显示的文本? Active Control没有.SelectedText选项,因此我使用了.Text

图像中的示例。

我只从EnhacedTextBox突出显示“Rus”

ActiveControl.Text包含“俄罗斯”。

如何在Clipboard.SetDataObject()中设置SelectedText “Rus”进行复制?

enter image description here

非常感谢您的意见和建议。

2 个答案:

答案 0 :(得分:0)

您的意思是想要获取文本框的选定文本吗?如果是这样,您可以使用TextBox.SelectedText属性。

我不确定你是否在寻找这个,但如果没有,那么我假设你在设计时间后面/代码中生成多个文本框?如果是这样,请尝试以下代码以获取活动文本框:

Private Sub GetTheText()
If Me.ActiveControl.[GetType]() = GetType(TextBox) Then
    Dim textBox As TextBox = CType(Me.ActiveControl, TextBox)
    Dim mytext = textbox.SelectedText
End If
End Sub

希望这有助于你

答案 1 :(得分:0)

m_strGetText = Me.m_udtNavigationController.TemplateKeyAss.PrimaryTask.ActiveControl.Text.ToString()
        Dim trial As EnhancedTextBox = TryCast(Me.m_udtNavigationController.TemplateKeyAss.PrimaryTask.ActiveControl, EnhancedTextBox)
        Dim trial2 As String = trial.SelectedText().ToString()

来自@jmcilhinney的解决方案。

trial2现在包含Rus个选定文字。感谢。