[英]adding a control to tabs generated dynamically in tabcontrol in C# .net
[英]WPF Tabs dynamically generated in a TabControl - How to access to their control?
我想了解这是如何工作的:
<DockPanel>
<Menu DockPanel.Dock="Top">
<MenuItem Header="File">
<MenuItem Header="Connect" Click="MenuItem_Click"/>
</MenuItem>
</Menu>
<TabControl
ItemsSource="{Binding Tabs}">
<TabControl.ItemTemplate>
<!-- this is the header template-->
<DataTemplate>
<TextBlock
Text="{Binding Header}" />
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<!-- this is the body of the TabItem template-->
<DataTemplate>
<StackPanel>
<TextBlock
Text="{Binding Content}" />
<TabControl Height="538" TabStripPlacement="Left">
<TabItem Header="Accueil" >
<Grid Margin="0,0,0,70">
<RichTextBox Margin="0,0,-5,-17" Width="1020"></RichTextBox>
<TextBox TextWrapping="Wrap" Text="TextBox" Margin="0,484,-5,-63"/>
</Grid>
</TabItem>
<TabItem Header="Packets">
<Grid>
</Grid>
</TabItem>
<TabItem Header="Map">
<Grid>
</Grid>
</TabItem>
<TabItem Header="Plugin">
<Grid>
</Grid>
</TabItem>
</TabControl>
</StackPanel>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
</DockPanel>
我正在动态生成选项卡。 但是我想做的是在后面的代码中访问每个选项卡的内容。 例如,我想访问后面代码中第二个选项卡的RichTextBox。 我尝试添加属性名称,但是不起作用(即使它起作用了,如果第一个选项卡的RichTextBox和第二个选项卡的RichTextBox具有相同的名称并且以相同的方式生成,那么如何可以做到两者之间的区别) 。
然后我的问题是,当动态生成TabItem时如何访问该控件。 以传统的方式命名,因为它的名字是,但在这里我们不能。
我不知道我是否清楚,请随时询问更多细节。
等待在您的视图代码内部加载如下所示的内容:
this.Loaded + =(source,arg)=> {var test =(FrameworkElement)this.xxxYOURxxxTABxName.Items [0]};
从那里,应该能够使用其Items属性访问选项卡控件的项目
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.