Как получить выделенный текст из Active Control в VB.NET? - PullRequest
0 голосов
/ 02 мая 2018

Есть ли способ получить выделенный текст или выделенный текст только из Active Control? Active Control не имеет опции .SelectedText, поэтому я использовал .Text

Пример на картинке.

Я только выделил "Русь" из EnhacedTextBox.

ActiveControl.Text содержит "Россия".

Как мне получить SelectedText "Rus" , который нужно установить в Clipboard.SetDataObject() для копирования?

enter image description here

Большое спасибо за ваши мнения и предложения.

Ответы [ 2 ]

0 голосов
/ 02 мая 2018
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 выделенный текст. Спасибо.

0 голосов
/ 02 мая 2018

Вы хотите получить выделенный текст из текстового поля? Если это так, вы можете использовать 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

Надеюсь, это поможет вам

...