就想问下, wpf中 ,怎么画个这样的表
datagrid 可以实现么? 如果可以, 请给个例子好么?
就是 第一行表头 可能每个cell占三列
第二行表头 每个cell占一列类似于这样的不规则的表头, wpf中怎么画???|———————————————————————————————————————— —|
|------第一季度------|------第二季度------|------第三季度------|------第四季度------|
|————————————————————————————————————————— |
| 1月份| 2月份| 3月份| 4月份| 5月份| 6月份| 7月份| 8月份| 9月份|10月份|11月份|12月份|
| —————————————————————————————————————————|
|                    |                    |                    |                    |
|————————————————————————————————————————— |
|                    |                    |                    |                    |
|————————————————————————————————————————— |
|                    |                    |                    |                    |
|————————————————————————————————————————— |

解决方案 »

  1.   

    使用<Path/>标签绘制直线,然后把它们放进Grid里并设置其Grid.RowSpan/ColumnSpan以及对齐方式
    使用Border控件
    本文说的是使用第2个办法,有机会再说第1个办法。使用Border的BorderThickness属性可以控制Border各边的显隐粗细(粗细为0就是不显示)。使用BorderBrush属性则可灵活控制每个单元格的边线颜色。请看下面的代码
    <Window x:Class="WpfApplication1.Window1"  
            xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  
            xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"  
            Title="Window1" Height="300" Width="300">  
        <Grid ShowGridLines="False">  
            <Grid.RowDefinitions>  
                <RowDefinition Height="25" />  
                <RowDefinition Height="25" />  
                <RowDefinition Height="25" />  
                <RowDefinition Height="25" />  
                <RowDefinition Height="25" />  
                <RowDefinition Height="25" />  
            </Grid.RowDefinitions>  
            <Grid.ColumnDefinitions>  
                <ColumnDefinition/>  
                <ColumnDefinition/>  
                <ColumnDefinition/>  
            </Grid.ColumnDefinitions>  
            <Border BorderBrush="Black" BorderThickness="1" Grid.Column="0" Grid.Row="0"/>  
            <Border BorderBrush="Blue" BorderThickness="0,1,1,1" Grid.Column="1" Grid.Row="0" Grid.ColumnSpan="2"/>  
            <Border BorderBrush="Red" BorderThickness="1,0,1,1" Grid.Column="0" Grid.Row="1"/>  
            <Border BorderBrush="Orange" BorderThickness="0,0,1,1" Grid.Column="1" Grid.Row="1" Grid.ColumnSpan="2"/>  
            <Border BorderBrush="Lime" BorderThickness="1,0,1,1" Grid.Column="0" Grid.Row="2" Grid.ColumnSpan="2" Grid.RowSpan="2"/>  
        </Grid>  
    </Window>  
      

  2.   

    谢楼上的
    不过不是我想要的
    这样的话,  用不了datagrid, 很多功能都不能用了
      

  3.   

    用grid
    如下:
    <Grid Width="500"  VerticalAlignment="Top" Margin="30" HorizontalAlignment="Center">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="100"></ColumnDefinition>
                        <ColumnDefinition Width="*"></ColumnDefinition>
                    </Grid.ColumnDefinitions>
                    <Grid.RowDefinitions>
                        <RowDefinition Height="30"></RowDefinition>
                        <RowDefinition Height="60"></RowDefinition>
                        <RowDefinition Height="120"></RowDefinition>
                        <RowDefinition Height="60"></RowDefinition>
                        <RowDefinition Height="*"></RowDefinition>
                    </Grid.RowDefinitions>
    </Grid>
      

  4.   

    刚看了两天wpf,  因为要急着画个界面, 
    头晕晕的
      

  5.   

    http://blog.csdn.net/taomanman/article/details/6936366是这种表头嘛??