Получение данных TextBox из элемента управления, размещенного в Winforms - PullRequest
1 голос
/ 11 марта 2012

Я создал текстовые поля, чтобы использовать их в winforms - текстовое поле сделано в wpf и интегрировано в форму. Проблема в том, что, когда я вношу в него какой-то текст, он на самом деле не «читает» его. Имя текстового поля - elementHost1, и если я пойду так:

string input1 = elementHost1.Text;

и я что-то пишу в текстовом поле, в строке это не отображается. Что-то не так в коде WPF? Я проверил что-то, говоря «IsReadOnly», но ничего подобного не было.

Ответы [ 2 ]

2 голосов
/ 11 марта 2012

Нет, имя ElementHost - elementHost1. Текстовое поле находится внутри этого. Вам нужно получить фактический объект внутри хоста элемента, чтобы получить текст.

Для этого откройте свойство .Child , чтобы получить доступ к текстовому полю, размещенному внутри ElementHost:

var elementHost = this.elementHost1;
var wpfTextBox = (System.Windows.Controls.TextBox)elementHost.Child;
var text = wpfTextBox.Text;
0 голосов
/ 11 марта 2012

Взгляните на http://msdn.microsoft.com/en-us/library/ms742215.aspx,, в котором описано, как отправить данные обратно в хост-приложение WinForms.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...