WPF中为ListView动态绑定数据(可参考)

GridView gv = new GridView();

DataTable dt = fieldManageBLL.GetFieldManage(moduleName);
for ( int  i=0;i<dt.Rows.Count;i++)
{
     if (i==0)
     {
         GridViewColumn gvc= new  GridViewColumn();
         CheckBox cb =  new  CheckBox();
         cb.Checked +=  new  RoutedEventHandler( new  SupplierPayBill().cb_Checked);
         cb.Content =  new  TextBlock().Text =  "全选" ;
         _gvc.Header = cb;
         _gvc.Width = 100;
         _gvc.CellTemplate = (DataTemplate)resources[ "TheCheckBox" ];
         gv.Columns.Add(_gvc);
         continue ;
     }
     gvc.DisplayMemberBinding =  new  Binding(dt.Rows[i][ "FieldManage_Field" ].ToString());
}
return  gv;
 
//其中:dt.Rows[i]["FieldManage_Field"].ToString();分别对应以下DataTemplate中的x:Key的值。
     //至于DisplayMemberBinding我才接触几天,目前的理解是只显示数据而没有其它效果;而CellTemplate则可以在显示的数据上加上控件的效果,比如CheckBox、Hyperlink等
 
//XAML代码:
     <Window.Resources>
         <!-- 复选框 -->
         <DataTemplate x:Key= "TheCheckBox" >
             <TextBlock VerticalAlignment= "Center" >
             <CheckBox Name= "ckb_SelectAll"  Click= "ckb_SelectAll_Click"  Margin= "6 0 0 0" >
                 <!--<TextBlock  Foreground= "White" >全选</TextBlock>-->
             </CheckBox>
             </TextBlock>
         </DataTemplate>
         <!-- 序号 -->
         <DataTemplate x:Key= "TheIndex" >
             <TextBlock Width= "100"  Text= "{Binding Path=TheIndex}"  Style= "{StaticResource NormalTextBlockStyle}"  TextAlignment= "Center" ></TextBlock>
         </DataTemplate>
         <!--单据号-->
         <DataTemplate x:Key= "StoBill_No" >
             <TextBlock Width= "150"  Text= "{Binding Path=StoBill_No}"  Tag= "{Binding Path=StoBill_ID}"  Style= "{StaticResource NormalTextBlockStyle}"  TextAlignment= "Right"  Padding= "0,0,20,0" ></TextBlock>
         </DataTemplate>
         <!--单据类型-->
         <DataTemplate x:Key= "StoBillsType_Name" >
             <TextBlock Width= "100"  Text= "{Binding Path=StoBillsType_Name }"  Style= "{StaticResource NormalTextBlockStyle}"  TextAlignment= "Center" ></TextBlock>
         </DataTemplate>
         <!--时间-->
         <DataTemplate x:Key= "StoBill_OperationDate" >
             <TextBlock Width= "150"  Text= "{Binding Path=StoBill_OperationDate,StringFormat='{}{0:yyyy-MM-dd HH:mm}'}"  Style= "{StaticResource NormalTextBlockStyle}"  TextAlignment= "Left" ></TextBlock>
         </DataTemplate>
         <!--应付-->
         <DataTemplate x:Key= "StoBill_NotPaid" >
             <TextBlock Width= "100"  Text= "{Binding Path=StoBill_NotPaid,StringFormat='N'}"  Style= "{StaticResource NormalTextBlockStyle}"  TextAlignment= "Right"  Padding= "0,0,20,0" ></TextBlock>
         </DataTemplate>
         <!--单据明细-->
         <DataTemplate x:Key= "DanjuDetail" >
             <TextBlock  TextAlignment= "Center"  Width= "100"  >
                <Hyperlink Name= "hpl_DanjuDetailListView"  Tag= "{Binding StoBill_ID}"  Click= "hpl_DanjuDetailListView_Click" >
                 <TextBlock x:Name= "tbl_DanjuDetail"  Text= "单据明细"  />
                </Hyperlink>
             </TextBlock>
         </DataTemplate>
         <!--结算明细-->
         <DataTemplate x:Key= "JieSuanDetail" >
             <TextBlock  TextAlignment= "Center"  Width= "100"  >
                <Hyperlink Name= "hpl_JieSuanDetailListView"  Tag= "{Binding StoBill_ID}"  Click= "hpl_JieSuanDetailListView_Click" >
                 <TextBlock x:Name= "tbl_DanjuDetail"  Text= "结算明细"  />
                </Hyperlink>
             </TextBlock>
         </DataTemplate>
       </Window.Resources>
 
原文:http://www.cnblogs.com/sjrhero/articles/2177994.html

转载于:https://www.cnblogs.com/lsgsanxiao/p/5920589.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值