dimanche 28 juin 2015

How to set different dataTemplate to treeViewItems in code behind

I have TreeView (named: treeViewDiagram):

< TreeView  x:Name = "treeViewDiagram" Grid.Row="2"
FontFamily="/logicalTree;component/Resources/Fonts/#Oxygen"
BorderThickness="7,7,0,7" BorderBrush="#FFE9E9E9" Padding="86,0,0,0" />

And here the three dataTamplate I have:

   < DataTemplate x:Key = "BasicDataTemplate">
        < Grid Height="Auto"  MinWidth="250"  HorizontalAlignment="Left" VerticalAlignment="Top" >

           <...>

        < /Grid >
    < /DataTemplate >           


    <DataTemplate x:Key="ComplexDataTemplate" >
      <Grid Height="Auto"  MinWidth="250"  HorizontalAlignment="Left" VerticalAlignment="Top">

           <...>

        </Grid>
    </DataTemplate>

    <DataTemplate x:Key="RootDataTemplate" >

        <Grid Height="Auto"  MinWidth="250"  HorizontalAlignment="Left" VerticalAlignment="Top" >

            <...>

        </Grid>
    </DataTemplate>

Now, I want to add treeViewItems in the code and set for each treeViewItem different dataTemplate according my code.

(if (basic) => so: BasicDataTemplate)

(if (complex) => so: ComplexDataTemplate)

(if (root) => so: RootDataTemplate)

So, I have 3 ObservableCollection in MainWindow:

  private ObservableCollection< MyBasicData >  _myBasicDataCollection = new ObservableCollection< MyBasicData >();

  private ObservableCollection< MyComplexData > _myComplexDataCollection = new ObservableCollection< MyComplexData >();

  private ObservableCollection< MyRootData > _myRootDataCollection = new ObservableCollection< MyRootData >();

|

|

How can I do that?

I will happy to as soon as help.

Aucun commentaire:

Enregistrer un commentaire