wpf数据显示控件

    wpf中的数据显示主要用listView来显示

   标准代码:

ExpandedBlockStart.gif 代码
     < Grid Height = " 319 "  Width = " 571 " >
        
< Grid.ColumnDefinitions >
            
< ColumnDefinition Width = " 50 "   ></ ColumnDefinition >
            
< ColumnDefinition ></ ColumnDefinition >
            
< ColumnDefinition Width = " 50 "   ></ ColumnDefinition >
        
</ Grid.ColumnDefinitions >
        
< Grid.RowDefinitions >
            
< RowDefinition Height = " 20 " ></ RowDefinition >
            
< RowDefinition ></ RowDefinition >
            
< RowDefinition Height = " 20 " ></ RowDefinition >
        
</ Grid.RowDefinitions >
        
< ListView Grid.Column = " 1 "   Grid.Row = " 1 "   Margin = " 31,47,34,28 "  Name = " listView1 "   >
            
< ListView.View >
                
< GridView ColumnHeaderToolTip = " Service " >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=SvcId} "  Header = " SvcId " ></ GridViewColumn >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=SvcNameResId} "  Header = " SvcNameResId " ></ GridViewColumn >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=SvcType} "  Header = " SvcType " ></ GridViewColumn >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=CarrierSvcCode} "  Header = " CarrierSvcCode " ></ GridViewColumn >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=SpId} "  Header = " SpId " ></ GridViewColumn >
                    
< GridViewColumn DisplayMemberBinding = " {Binding Path=UserType} "  Header = " UserType " ></ GridViewColumn >
                
</ GridView >
            
</ ListView.View >
        
</ ListView >
    
</ Grid >

 

 

 

 

ExpandedBlockStart.gif 代码
代码 
        
private   void  BindData()
        {
            SqlConnection conn 
=   new  SqlConnection();
            conn.ConnectionString 
=   @" server=192.168.110.210\Global01;database=IICHADB;uid=sa;pwd=Password01! " ;
            conn.Open();
            SqlCommand cmd 
=  conn.CreateCommand();
            cmd.CommandText 
=   " select * from dbo.CFG_Service with(nolock) " ;
            SqlDataAdapter sda 
=   new  SqlDataAdapter(cmd);
            DataTable dt 
=   new  DataTable();
            sda.Fill(dt);
            listView1.ItemsSource 
=  dt.DefaultView;
            conn.Dispose();
        }

 

 

遇到的问题:能否在代码中地址列内容而通过反射动态绑定

 

ExpandedBlockStart.gif 代码
            GridView gv  =   new  GridView();
            
foreach  (DataColumn col  in  dt.Columns)
            {
                GridViewColumn gvc 
=   new  GridViewColumn();
                gvc.Header 
=  col.ColumnName;
                Binding bing 
=   new  Binding();
                bing.Path 
=   new  PropertyPath(col.ColumnName);
                gvc.DisplayMemberBinding 
=  bing;
                gv.Columns.Add(gvc);
            }
            listView1.View 
=  gv;
            listView1.ItemsSource 
=  dt.DefaultView;

 

 

在列中绑定checkbox等控件

 

ExpandedBlockStart.gif 代码
            foreach  (DataColumn col  in  dt.Columns)
            {
                GridViewColumn gvc 
=   new  GridViewColumn();
                gvc.Header 
=  col.ColumnName;
                Binding bing 
=   new  Binding();  
                bing.Path 
=   new  PropertyPath(col.ColumnName);
                DataTemplate template 
=   new  DataTemplate(); 
              
                FrameworkElementFactory factory 
=   new  FrameworkElementFactory( typeof (TextBox));
                factory.SetBinding(TextBox.TextProperty, bing);
                factory.SetValue(TextBox.ForegroundProperty, Brushes.Pink);
                template.VisualTree 
=  factory;
                gvc.CellTemplate 
=  template;
                gv.Columns.Add(gvc);
            }

 

 

posted on 2009-12-05 14:32 吴勇 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/wuyong/archive/2009/12/05/1617543.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值