日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解WPF4DataGrid控件的基本功能

給大家講到WPF,我們就不得不提到WinForm,之前也報(bào)導(dǎo)過(guò)《WPF與WinForm對(duì)比談 多線程編程優(yōu)化是關(guān)鍵》的技術(shù)文章,對(duì)于他們之間的優(yōu)劣有了更深刻的認(rèn)識(shí)。而今天我們要講到的是WPF 4中的DataGrid空間。我們也誠(chéng)摯向您推薦《讓你的代碼“炫”起來(lái)——WPF開發(fā)教程》。

創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè),網(wǎng)站制作與網(wǎng)站建設(shè)公司,1800元做網(wǎng)站建設(shè)全包,免費(fèi)贈(zèng)送網(wǎng)站基礎(chǔ)優(yōu)化服務(wù),讓你的網(wǎng)站變得更有價(jià)值,公司擁有完善的專業(yè)網(wǎng)絡(luò)公司流程,能夠?yàn)槠髽I(yè)提供建站服務(wù)。使用PHP+MYSQL開發(fā)可交付網(wǎng)站源代碼;符合網(wǎng)站優(yōu)化排名的后臺(tái)管理系統(tǒng);網(wǎng)站制作收費(fèi)合理;免費(fèi)進(jìn)行網(wǎng)站備案等企業(yè)網(wǎng)站建設(shè)一條龍服務(wù).

提到DataGrid 不管是網(wǎng)頁(yè)還是應(yīng)用程序開發(fā)都會(huì)頻繁使用。通過(guò)它我們可以靈活的在行與列間顯示各種數(shù)據(jù)。本篇將詳細(xì)介紹WPF 4 中DataGrid 的相關(guān)功能。

自定義列

默認(rèn)情況下,當(dāng)我們?yōu)镈ataGrid 控件設(shè)置ItemSource 屬性后,DataGrid 會(huì)根據(jù)數(shù)據(jù)類型自動(dòng)生成相應(yīng)的列,下表列出DataGrid 支持的四種列及其數(shù)據(jù)類型。

在創(chuàng)建DataGrid 時(shí)可以通過(guò)AutoGenerateColumns 屬性設(shè)置列是否自動(dòng)生成,從而加入自定義列。如果DataGrid 中同時(shí)包含“自動(dòng)生成列”與“用戶自定義列”,則首先創(chuàng)建“用戶自定義列”。下面代碼實(shí)例中分別創(chuàng)建這四種列:

 
 
 
 
  1.         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  2.         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3.         xmlns:local="clr-namespace:WPF4ControlTest"
  4.         xmlns:assembly="clr-namespace:System;assembly=mscorlib"
  5.         Title="MainWindow" Height="200" Width="500">
  6.     
  7.         
  8.                             ObjectType="{x:Type assembly:Enum}">
  9.             
  10.                 
  11.             
  12.         
  13.     
  14.     
  15.         
  16.             
  17.                 
  18.                 
  19.                 
  20.                                         SelectedItemBinding="{Binding Sex}" 
  21.                               ItemsSource="{Binding Source={StaticResource sexEnum}}"/>
  22.                 
  23.                                         Binding="{Binding Pass}"/>
  24.                 
  25.                                          Binding="{Binding Email}"/>
  26.             
  27.         
  28.     

其中每列都包含各自的數(shù)值類型,在C# 中創(chuàng)建Member 類及SexOpt 枚舉,并將memberData 數(shù)據(jù)綁定到DataGrid:

 
 
 
 
  1. using System;
  2. using System.Windows;
  3. using System.Collections.ObjectModel;
  4. namespace WPF4ControlTest
  5. {
  6.     /// 
  7.     /// Interaction logic for MainWindow.xaml
  8.     /// 
  9.     public partial class MainWindow : Window
  10.     {
  11.         public MainWindow()
  12.         {
  13.             InitializeComponent();
  14. ObservableCollection memberData = new ObservableCollection();
  15.             memberData.Add(new Member()
  16.             {
  17.                 Name = "Joe", Age = "23", Sex = SexOpt.Male,
  18.                 Pass = true, Email = new Uri("mailto:Joe@school.com")
  19.             });
  20.             memberData.Add(new Member()
  21.             {
  22.                 Name = "Mike", Age = "20",
  23.                 Sex = SexOpt.Male, Pass = false,
  24.                 Email = new Uri("mailto:Mike@school.com")
  25.             });
  26.             memberData.Add(new Member()
  27.             {
  28.                 Name = "Lucy", Age = "25",
  29.                 Sex = SexOpt.Female, Pass = true,
  30.                 Email = new Uri("mailto:Lucy@school.com")
  31.             });
  32.             dataGrid.DataContext = memberData;
  33.         }
  34.     }
  35.     public enum SexOpt { Male, Female };
  36.     public class Member
  37.     {
  38.         public string Name { get; set; }
  39.         public string Age { get; set; }
  40.         public SexOpt Sex { get; set; }
  41.         public bool Pass { get; set; }
  42.         public Uri Email { get; set; }
  43.     }
  44. }

這樣我們就可以通過(guò)自定義列的方式創(chuàng)建出DataGrid:

選擇模式

默認(rèn)情況下,DataGrid 的選擇模式為“全行選擇”,并且可以同時(shí)選擇多行(如下圖所示),我們可以通過(guò)SelectionMode 和SelectionUnit 屬性來(lái)修改DataGrid 的選擇模式。

SelectionUnit:包含Cell、FullRow 和CellOrRowHeader 三種單元選擇模式。

 ◆Cell:選擇單元格;

◆FullRow:選擇全行;

 ◆CellOrRowHeader:可選擇單元格,也可以通過(guò)點(diǎn)擊行選擇擇全行;

SelectionMode:分為Extended 和Single 兩種模式。

◆Extended:選擇多個(gè)單元(單元格或全行,由SelectionUnit 定義);

◆Single:選擇唯一單元(單元格或全行,由SelectionUnit 定義);

 
 
 
 
  1.           SelectionUnit="Cell" SelectionMode="Extended">… …
 

設(shè)置SelectionUnit 和SelectionMode 后的實(shí)例效果:

編輯

默認(rèn)情況下,我們可以直接在DataGrid 中編輯數(shù)據(jù)(下表為相關(guān)的編輯命令),當(dāng)然也可以通過(guò)IsReadOnly 屬性將DataGrid 設(shè)置為只讀方式。

 
 
 
 
  1.           SelectionUnit="Cell" SelectionMode="Extended" IsReadOnly="True">… …
 

鏈接:http://www.cnblogs.com/gnielee/archive/2010/04/16/wpf4-datagrid-control-basic.html


網(wǎng)站題目:詳解WPF4DataGrid控件的基本功能
轉(zhuǎn)載來(lái)源:http://www.5511xx.com/article/cdjchjj.html