我创建了文本框以在winforms中使用它们 - 文本框在wpf中完成并集成在表单中。问题是当我在其中输入一些文本时,它并没有真正“读取”它。文本框的名称是elementHost1,如果我这样:
string input1 = elementHost1.Text;
我在文本框中写了一些东西,它没有显示在字符串中。 WPF代码有什么问题吗?我查了一下“IsReadOnly”的内容,但没有那样的东西。
答案 0 :(得分:2)
不,ElementHost的名称是elementHost1。文本框内部托管。您需要获取元素主机内的实际对象才能获得文本。
为此,请访问.Child property以获取ElementHost中托管的文本框:
var elementHost = this.elementHost1;
var wpfTextBox = (System.Windows.Controls.TextBox)elementHost.Child;
var text = wpfTextBox.Text;
答案 1 :(得分:0)
查看http://msdn.microsoft.com/en-us/library/ms742215.aspx,其中介绍了如何将数据发送回WinForms主机应用程序。