VB中的WPF:如何从字符串中提取表单中的文本框?
我试图从一个字符串中获取WPF表单中的对象TextBox,该字符串等于TextBox.Name 我的XAML如下所示:VB中的WPF:如何从字符串中提取表单中的文本框?,wpf,vb.net,xaml,Wpf,Vb.net,Xaml,我试图从一个字符串中获取WPF表单中的对象TextBox,该字符串等于TextBox.Name 我的XAML如下所示: <Window> <DockPanel> <TabItem Header="3"> <Grid> <TextBox x:Name="textBox1"/> <TextBox x:Name="textBox2"/> </Grid> </TabItem> </Dockp
<Window>
<DockPanel>
<TabItem Header="3">
<Grid>
<TextBox x:Name="textBox1"/>
<TextBox x:Name="textBox2"/>
</Grid>
</TabItem>
</Dockpanel>
</Window>
我做错了什么
提前感谢您可以使用您指定的名称从代码隐藏中访问元素 或者,如果仍要枚举树,则应使用递归方法查找元素。msdn显示了以下示例:
你为什么不直接用文本框的名称在代码中访问它呢?请描述一下你需要使用这种函数的场景?我有8个文本框和8个字符串,我想在一个文本框中随机放置1个字符串。所以random int我会给我textBox(i)。好的,谢谢,还有没有一种方法可以将“visual”转换成类似textBox的元素?Dim x=TryCast(visual,textBox),如果它不是textBox,则返回null
Private Function getTextboxOutName(ByVal parent As DependencyObject, ByVal textBoxName As String) As Object
Dim element As Object
Dim aantalElementen As Integer = VisualTreeHelper.GetChildrenCount(parent)
If aantalElementen > 0 Then
For n As Integer = 0 To aantalElementen - 1
Dim child As DependencyObject = VisualTreeHelper.GetChild(parent, n)
element = child
If element.Name = textBoxName Then
Return element
End If
Next
End If
Return Nothing
End Function
Public Shared Sub EnumVisual(ByVal myVisual As Visual)
For i As Integer = 0 To VisualTreeHelper.GetChildrenCount(myVisual) - 1
' Retrieve child visual at specified index value.
Dim childVisual As Visual = CType(VisualTreeHelper.GetChild(myVisual, i), Visual)
' Do processing of the child visual object.
' Enumerate children of the child visual object.
EnumVisual(childVisual)
Next i
End Sub