WPF 实现主从的datagrid以及操作rowdetailtemplate 的方法

WPF 实现主从的datagrid以及操作rowdetailtemplate 的方法

       最近在做一个项目,其中要用到主从表数据的折叠和隐藏,并且对从表中的数据能够获取和操作,虽然搞了好久,但最终被我推敲出来了,写出来分享一下,让朋友少走弯路,废话不说了,先上效果图:

下面是代码:

 
前台   
<DataGrid ItemsSource= "{Binding}" Name= "dataGrid1" MouseUp= "dataGrid1_MouseUp" ...>   
<DataGrid.Columns>   
                    <DataGridTemplateColumn Width= "Auto" >   
                        <DataGridTemplateColumn.CellTemplate>   
                            <DataTemplate>   
                                <Expander Expanded= "Expander_Expanded" Collapsed= "Expander_Collapsed" />   
                            </DataTemplate>   
                        </DataGridTemplateColumn.CellTemplate>   
                    </DataGridTemplateColumn>   
                    <DataGridTextColumn Binding= "{Binding Facility_type}" FontSize= "22" Header= "設備類型"   Width= "120" />   
                    <DataGridTextColumn  FontSize= "22" Header= "廠房代碼" Width= "85" />   
                    <DataGridTextColumn  FontSize= "22"  Header= "樓層" Width= "70" />   
                    <DataGridTextColumn  FontSize= "22"   Header= "部門名稱" Width= "430" />   
                    <DataGridTextColumn Binding= "{Binding Count_all}" FontSize= "22"    Header= "設備總數"  Width= "100" />   
                    <DataGridTextColumn Binding= "{Binding Count_no}" FontSize= "25"  FontWeight= "Bold"   Foreground= "Red" Header= "未使用數量"  Width= "115" />   
                    <DataGridTextColumn Binding= "{Binding Count_yes}" FontSize= "22"  Foreground= "Green"  Header= "使用中數量"  Width= "115" />   
         
                </DataGrid.Columns>   
                <DataGrid.RowDetailsTemplate >   
                    <DataTemplate  >   
         
                        <DataGrid Name= "dataGrid2"  Width= "1070"  SelectedValuePath = "dept_code" IsReadOnly= "True"  HeadersVisibility= "None" HorizontalGridLinesBrush= "#FFE0E2DF" VerticalGridLinesBrush= "#FFE0E2DF"
                                  ItemsSource= "{Binding Details}" CanUserAddRows= "False" SelectionUnit= "FullRow"  AutoGenerateColumns= "False"  MouseUp= "dataGrid2_MouseUp" >   
                            <DataGrid.Columns>   
                                <DataGridTextColumn   Header= ""   Width= "150" />   
                                <DataGridTextColumn Binding= "{Binding building_code}" FontSize= "22" Header= "廠房代碼" Width= "85" />   
                                <DataGridTextColumn Binding= "{Binding floor}" FontSize= "22"  Header= "樓層" Width= "70" />   
  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值