WPF如何将图形显示为TreeView中的节点

时间:2014-01-08 15:45:34

标签: c# wpf mvvm graph treeview

这是集体的设计问题,如何最好地解决以下问题:

我有一组图表,其数据合并为一个整体图表。我希望将此整体图显示为树的根,并且当树展开时,构成整体图的所有图都显示为子节点。

还需要考虑另外两个因素,首先可能存在多个级别的子节点,而不仅仅是一个。其次,我需要所有的图形垂直排列而不是像标准树那样缩进,这就是所有轴的排列。

我目前正在考虑使用包含两列的网格,第0列中的TreeView和第1列中的图形,然后在每个图形中添加一行,并使TreeView跨越所有行,类似于以下xaml

    <Grid Name="TreeGrid">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto"/>
        <ColumnDefinition Width="*" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="*" />
        <RowDefinition Height="*" />
        <RowDefinition Height="*" />
    </Grid.RowDefinitions>

    <TreeView Name="GraphTree" Grid.Column="0" Grid.RowSpan="3">
        <TreeViewItem Header="Root" >
            <TreeViewItem Header="Node 1" />
            <TreeViewItem Header="Node 2" />
        </TreeViewItem>

    </TreeView>

    <chartingToolkit:Chart
                    Grid.Column="1"
                    Grid.Row="0"
                    Title="Sensor 2"
                    LegendTitle="Data" Margin="0,0,0,111"
                    Name="Chart1">
    </chartingToolkit:Chart>
    <!-- Other Chart Details -->

    <chartingToolkit:Chart
                    Grid.Column="1"
                    Grid.Row="1"
                    Title="Sensor 3"
                    LegendTitle="Data" Margin="0,0,0,111"
                    Name="Chart1">
    </chartingToolkit:Chart>
    <!-- Other Chart Details -->

    <chartingToolkit:Chart
                    Grid.Column="1"
                    Grid.Row="2"
                    Title="Sensor 4"
                    LegendTitle="Data" Margin="0,0,0,111"
                    Name="Chart1">
    </chartingToolkit:Chart>
    <!-- Other Chart Details -->

</Grid>

对于xaml的伪句道歉,这一切都在设计阶段。 任何建议都非常感谢,必须有更好的方法来做到这一点。 感谢。

0 个答案:

没有答案