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
作者:三小
声明:原创博客请在转载时保留原文链接或者在文章开头加上本人博客地址,如发现错误,欢迎批评指正。凡是转载于本人的文章,不能设置打赏功能,如有特殊需求请与本人联系!

浙公网安备 33010602011771号