2017-10-16 2 views
0

Mon projet est basé sur WPF. J'ai créé un conteneur de toile. Sous ce conteneur, j'ai deux grilles (gSettings et gGrid).Le contenu de la grille disparaît lors de la sélection d'un élément d'une autre grille sous Canevas

J'ai utilisé GroupBox. Sous Canvas Container (gCanvas), j'ai créé deux grilles (gSettings et gGrid). Sous gGrid, j'utilise les contrôles de tabulation (tabCtrlDevice). La première fois que la fenêtre est en cours de chargement, elle affiche correctement les données dans les deux grilles, mais lorsque je change d'onglet, la deuxième grille, à savoir gGrid, gSettings disparaît.

S'il vous plaît aidez-nous à régler ce problème.

Merci d'avance.

<GroupBox x:Name="DragDropgrpbox" Height="Auto" Width="Auto"> 
    <ZoomableCanvas x:Name="zoomCtrl"> 
     <Canvas x:Name="gCanvas"> 
      <Grid x:Name="gSettings" Canvas.Left="0" Height="613"> 
       <Grid.RowDefinitions> 
        <RowDefinition Height="*"/> 
       </Grid.RowDefinitions> 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="15" /> 
        <ColumnDefinition /> 
       </Grid.ColumnDefinitions> 
       <Border x:Name="wrapBrdr2" Grid.Column="1" Grid.ColumnSpan="2"> 
        <WrapPanel VerticalAlignment="Center" HorizontalAlignment="Center"> 
         <Image Name="ImageViewer2" Stretch="Fill" HorizontalAlignment="Center" Width="116" Height="107" Panel.ZIndex="1" VerticalAlignment="Center" /> 
        </WrapPanel> 
       </Border> 
      </Grid> 
      <Grid x:Name="gGrid" Canvas.Left="140" Height="646"> 
       <Grid.RowDefinitions> 
        <RowDefinition Height="Auto"/> 
        <RowDefinition Height="5"/> 
        <RowDefinition Height="Auto"/> 
        <RowDefinition Height="15"/> 
        <RowDefinition Height="Auto"/> 
        <RowDefinition Height="5"/> 
        <RowDefinition Height="*"/> 
       </Grid.RowDefinitions> 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="5" /> 
        <ColumnDefinition /> 
        <ColumnDefinition x:Name="grdConverterColumn" MinWidth="140" Width="*"/> 
        <ColumnDefinition /> 
        <ColumnDefinition x:Name="grdPortColumn" Width="*"/> 
        <ColumnDefinition /> 
        <ColumnDefinition Width="5"/> 
       </Grid.ColumnDefinitions> 
       <Border x:Name="wrapBrdr" Grid.Column="1" Grid.Row="2" Grid.ColumnSpan="2"> 
        <WrapPanel> 
         <Image Name="ImageViewer1" Stretch="Fill" HorizontalAlignment="Left" Width="54" Height="49" Panel.ZIndex="1" /> 
         <TextBlock x:Name="lblMessage" Grid.Column="3" Grid.Row="2" Grid.ColumnSpan="4"> 
          <TextBlock.Inlines> 
           <Run x:Name="step1" /> 
           <LineBreak/> 
           <Run x:Name="step2" /> 
           <LineBreak/> 
           <Run x:Name="step3" /> 
          </TextBlock.Inlines> 
         </TextBlock> 
        </WrapPanel> 
       </Border><TabControl x:Name="tabCtrlDevice" Grid.Column="1" Grid.Row="5" Grid.ColumnSpan="2" Grid.RowSpan="2"> 
        <TabItem x:Name="CoriolisMVD" > 
         <TabItem.Content> 
          <UniformGrid x:Name="grdDevices" Columns="3" VerticalAlignment="Top"/> 
         </TabItem.Content> 
        </TabItem> 
        <TabItem x:Name="DensityViscosity"> 
         <TabItem.Content> 
          <UniformGrid x:Name="grdDensityViscosity" Columns="2" VerticalAlignment="Top"/> 
         </TabItem.Content> 
        </TabItem> 
        <TabItem x:Name="RosemountFlow" > 
         <TabItem.Content> 
          <UniformGrid x:Name="grdRosemountFlow" Columns="2" VerticalAlignment="Top"/> 
         </TabItem.Content> 
        </TabItem> 
        <TabItem x:Name="Other" > 
         <TabItem.Content> 
          <UniformGrid x:Name="grdOther" Columns="2" VerticalAlignment="Top"/> 
         </TabItem.Content> 
        </TabItem> 
       </TabControl> 
       <!--End Device Tab Controler--> 

       <Grid Grid.Column="3" Grid.Row="6"> 
        <UniformGrid x:Name="grdConverters" Columns="1" VerticalAlignment="Top"/> 
       </Grid> 
       <Border x:Name="grdPortsBrdr" Height="500px" Grid.Column="4" Grid.Row="6" HorizontalAlignment="Right" > 
        <ScrollViewer> 
         <UniformGrid x:Name="grdPorts" VerticalAlignment="Top"/> 
        </ScrollViewer> 
       </Border> 
      </Grid> 
     </Canvas> 
    </ZoomableCanvas> 
</GroupBox> 

Répondre

0

Après une lutte beaucoup, je suis une solution:

gCanvas.Children.Add(gSettings); 

J'ai résolu il s`