2010-05-17 130 views
0

请我试着为每个按钮分配左侧自己的Tab控件。这是例如,当按下Intake表单按钮时,它将有自己的一组选项卡(它自己的选项卡控件)如何使用多个选项卡控件,并能够使用按钮调用选定的选项卡控件

我是否应该在美工板上放置多个选项卡控件,或者是否存在以编程方式更改的方法当按钮被按在左边时,选项卡的名称和内容如何?

谢谢你提前。

,这里是一个链接hxxp://img709.imageshack.us/img709/554/tabcontrol.gif

这里是迄今为止

<Window 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
x:Class="service.MainWindow" 
x:Name="Window" 
Title="MainWindow" 
Width="687" Height="480" mc:Ignorable="d"> 
<Window.Resources> 
    <Storyboard x:Key="OnLoaded1"/> 
</Window.Resources> 
<Window.Triggers> 
    <EventTrigger RoutedEvent="FrameworkElement.Loaded"> 
    <BeginStoryboard Storyboard="{StaticResource OnLoaded1}"/> 
    </EventTrigger> 
</Window.Triggers> 

<Grid x:Name="LayoutRoot" Margin="0,0,-16,1"> 
    <Grid.ColumnDefinitions> 
    <ColumnDefinition Width="0*"/> 
    <ColumnDefinition/> 
    </Grid.ColumnDefinitions> 
    <DockPanel Margin="8,8,0,7" LastChildFill="False" Grid.Column="1" HorizontalAlignment="Left" Width="660"> 
    <Menu VerticalAlignment="Top" Width="657" Height="32"> 
    <MenuItem x:Name="file" Header="File"/> 
    <MenuItem x:Name="edit" Header="Edit"> 
    <MenuItem Width="100" Height="100" Header="MenuItem"/> 
    </MenuItem> 
    <MenuItem x:Name="view" Header="View"/> 
    <MenuItem x:Name="preferences" Header="Preferences"/> 
    <MenuItem x:Name="help" Header="Help"/> 
    </Menu> 
    </DockPanel> 
    <TabControl x:Name="tabwin" Margin="137.224,46,19,7" Grid.Column="1"> 
    <TabItem x:Name="intakeformsub" Header="Elegibility Form"> 
    <Grid HorizontalAlignment="Left" Width="490"/> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid/> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid/> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="0.567*"/> 
     <ColumnDefinition Width="0.433*"/> 
    </Grid.ColumnDefinitions> 
    </Grid> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid/> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="0.735*"/> 
     <ColumnDefinition Width="0.265*"/> 
    </Grid.ColumnDefinitions> 
    </Grid> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid/> 
    </TabItem> 
    <TabItem Header="TabItem"> 
    <Grid/> 
    </TabItem> 
    </TabControl> 
    <Grid x:Name="___buttontab" Margin="11.205,61,0,0" Grid.Column="1" HorizontalAlignment="Left" Width="122.019" VerticalAlignment="Top" Height="276"> 
    <Button VerticalAlignment="Top" Height="36" Content="Button"/> 
    <Button Margin="0,40,0,0" Content="Oasis Assessments" VerticalAlignment="Top" Height="36"/> 
    <Button Margin="0,80,0,0" VerticalAlignment="Top" Height="36" Content="Plan of Care"/> 
    <Button Margin="0,120,0,0" VerticalAlignment="Top" Height="36" Content="Medication Profile" RenderTransformOrigin="0.421,5.556"/> 
    <Button Margin="0,0,0,80" VerticalAlignment="Bottom" Height="36" Content="Clinical Notes"/> 
    <Button Margin="0,0,0,40" VerticalAlignment="Bottom" Height="36" Content="Infection Control"/> 
    <Button x:Name="intakeformbtn" VerticalAlignment="Top" Height="36" Content="Intake Form" Click="intakeform"> 
    <Button.BindingGroup> 
    <BindingGroup/> 
    </Button.BindingGroup> 
    </Button> 
    <Button VerticalAlignment="Bottom" Height="36" Content="Discharge Summary"/> 
    </Grid> 
    <ProgressBar HorizontalAlignment="Left" Margin="8,0,0,7" VerticalAlignment="Bottom" Width="104.795" Height="19" Grid.Column="1"/> 
</Grid> 
</Window> 
+0

就个人而言,我想给每个按钮它自己的标签控件(有多个选项卡),然后单击该按钮时,做一个动画到该选项卡控制从幻灯片对,并使已经存在的那个消失。 – 2010-05-17 18:57:44

回答

0

代码来解决这个问题的一种方式使用另一个TabControl而不是按钮,但其中标签页标题被重新设计为可视化的按钮代替标签。这样你甚至不必处理按钮的变化。

试试下面的代码:

<Window 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
x:Class="WpfApplication16.MainWindow" 
x:Name="Window" 
Title="MainWindow" 
Width="687" Height="480" mc:Ignorable="d"> 
    <Window.Resources> 
     <Storyboard x:Key="OnLoaded1"/> 

     <Style TargetType="{x:Type TabItem}" x:Key="TabButtonStyle"> 
      <Setter Property="Template"> 
       <Setter.Value> 
        <ControlTemplate TargetType="{x:Type TabItem}"> 
         <ToggleButton IsChecked="{Binding RelativeSource={RelativeSource AncestorType={x:Type TabItem}}, Path=IsSelected, Mode=TwoWay}" 
                Margin="10"> 
          <ContentPresenter ContentSource="Header" /> 
         </ToggleButton> 
        </ControlTemplate> 
       </Setter.Value> 
      </Setter> 
     </Style> 

    </Window.Resources> 
    <Window.Triggers> 
     <EventTrigger RoutedEvent="FrameworkElement.Loaded"> 
      <BeginStoryboard Storyboard="{StaticResource OnLoaded1}"/> 
     </EventTrigger> 
    </Window.Triggers> 

    <Grid x:Name="LayoutRoot" Margin="0,0,-16,1"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="0*"/> 
      <ColumnDefinition/> 
     </Grid.ColumnDefinitions> 
     <DockPanel Margin="8,8,0,7" LastChildFill="False" Grid.Column="1" HorizontalAlignment="Left" Width="660"> 
      <Menu VerticalAlignment="Top" Width="657" Height="32"> 
       <MenuItem x:Name="file" Header="File"/> 
       <MenuItem x:Name="edit" Header="Edit"> 
        <MenuItem Width="100" Height="100" Header="MenuItem"/> 
       </MenuItem> 
       <MenuItem x:Name="view" Header="View"/> 
       <MenuItem x:Name="preferences" Header="Preferences"/> 
       <MenuItem x:Name="help" Header="Help"/> 
      </Menu> 
     </DockPanel> 
     <TabControl Margin="0,61,0,0" Grid.Column="1" ItemContainerStyle="{StaticResource TabButtonStyle}" TabStripPlacement="Left"> 
      <TabControl.Items> 
       <TabItem Header="Button"> 
        <Grid> 
         <TabControl x:Name="tabwin"> 
          <TabItem x:Name="intakeformsub" Header="Elegibility Form"> 
           <Grid HorizontalAlignment="Left" Width="490"/> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid/> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid/> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid> 
            <Grid.ColumnDefinitions> 
             <ColumnDefinition Width="0.567*"/> 
             <ColumnDefinition Width="0.433*"/> 
            </Grid.ColumnDefinitions> 
           </Grid> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid/> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid> 
            <Grid.ColumnDefinitions> 
             <ColumnDefinition Width="0.735*"/> 
             <ColumnDefinition Width="0.265*"/> 
            </Grid.ColumnDefinitions> 
           </Grid> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid/> 
          </TabItem> 
          <TabItem Header="TabItem"> 
           <Grid/> 
          </TabItem> 
         </TabControl> 
         <ProgressBar HorizontalAlignment="Left" Margin="8,0,0,7" VerticalAlignment="Bottom" Width="104.795" Height="19" Grid.Column="1"/> 
        </Grid> 
       </TabItem> 
       <TabItem Header="Oasis Assessments"> 
        Foo 
       </TabItem> 
       <TabItem Header="Plan of Care"> 
        Bar 
       </TabItem> 
       <TabItem Header="Medication Profile"> 
       </TabItem> 
       <TabItem Header="Clinical Notes"> 
       </TabItem> 
       <TabItem Header="Infection Control"> 
       </TabItem> 
       <TabItem Header="Intake Form"> 
       </TabItem> 
      </TabControl.Items> 
     </TabControl> 
    </Grid> 
</Window> 
+0

非常感谢您的快速回复(我非常感谢) – mojotaker 2010-05-17 19:08:52

+0

男人你是一个天才。谢谢。 – mojotaker 2010-05-17 19:37:52

相关问题