DataGridComboBoxColumn Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
public ref class DataGridComboBoxColumn : System::Windows::Controls::DataGridColumn
public class DataGridComboBoxColumn : System.Windows.Controls.DataGridColumn
type DataGridComboBoxColumn = class
inherit DataGridColumn
Public Class DataGridComboBoxColumn
Inherits DataGridColumn
- Warisan
Contoh
Contoh berikut menunjukkan cara mengisi daftar drop-down untuk masing-masing ComboBox di kolom dengan nilai enumerasi. Item yang dipilih dalam daftar drop-down terikat dengan mengatur SelectedItemBinding properti ke properti objek yang ditampilkan di setiap baris.
<NavigationWindow x:Class="DataGrid_CustomColumns.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:core="clr-namespace:System;assembly=mscorlib"
xmlns:local="clr-namespace:DataGrid_CustomColumns"
Title="Customers" Height="300" Width="300" ShowsNavigationUI="False" >
<NavigationWindow.Resources>
<!--Create list of enumeration values-->
<ObjectDataProvider x:Key="myEnum" MethodName="GetValues" ObjectType="{x:Type core:Enum}">
<ObjectDataProvider.MethodParameters>
<x:Type Type="local:OrderStatus"/>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
<!--Create an instance of the converter for Email-->
<local:EmailConverter x:Key="EmailConverter" />
</NavigationWindow.Resources>
<NavigationWindow.Content>
<Grid>
<DataGrid Name="DG1" ItemsSource="{Binding}" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridComboBoxColumn Header="Order Status" SelectedItemBinding="{Binding Status}" ItemsSource="{Binding Source={StaticResource myEnum}}" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</NavigationWindow.Content>
</NavigationWindow>
public partial class Window1 : NavigationWindow
{
Class Window1
public Window1()
{
InitializeComponent();
//GetData() creates a collection of Customer data from a database
ObservableCollection<Customer> custdata = GetData();
//Bind the DataGrid to the customer data
DG1.DataContext = custdata;
}
Public Sub New()
' This call is required by the Windows Form Designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
'GetData() creates a collection of Customer data from a database
Dim custdata As ObservableCollection(Of Customer) = GetData()
'Bind the DataGrid to the customer data
DG1.DataContext = custdata
End Sub
//Defines the customer object
public class Customer
{
public string FirstName { get; set; }
public string LastName { get; set; }
public Uri Email { get; set; }
public bool IsMember { get; set; }
public OrderStatus Status { get; set; }
}
'Defines the customer object
Public Class Customer
Public Property FirstName() As String
Public Property LastName() As String
Public Property Email() As Uri
Public Property IsMember() As Boolean
Public Property Status() As OrderStatus
End Class
public enum OrderStatus { None, New, Processing, Shipped, Received };
Public Enum OrderStatus
None
[New]
Processing
Shipped
Received
End Enum
Keterangan
Gunakan DataGridComboBoxColumn untuk menampilkan data di mana ada sekumpulan item untuk dipilih, seperti enumerasi. DataGridComboBoxColumn memungkinkan pengguna untuk memilih item dari daftar drop-down. Ilustrasi berikut menunjukkan DataGridComboBoxColumn.
Untuk mengisi daftar drop-down, pertama-tama atur ItemsSource properti untuk ComboBox dengan menggunakan salah satu opsi berikut:
Sumber daya statis. Untuk informasi selengkapnya, lihat Ekstensi Markup StaticResource.
Entitas kode x:Static. Untuk informasi selengkapnya, lihat x:Ekstensi Markup Statis.
Kumpulan jenis ComboBoxItem sebaris.
ItemsSource Setelah diatur, ikat item yang dipilih di ComboBox item ke data untuk baris tempat sel berada. Anda bisa mengatur pengikatan dengan menggunakan salah satu properti berikut:
Properti | Deskripsi |
---|---|
TextBinding | Menyetel jalur pengikatan teks untuk item yang saat ini dipilih. |
SelectedItemBinding | Mengatur jalur pengikatan objek yang saat ini dipilih. |
SelectedValueBinding | Mengatur jalur pengikatan ke nilai item terpilih yang ditentukan oleh SelectedValuePath properti . |
IsReadOnly Saat properti diatur ke true
, pengguna tidak dapat mengedit kolom dan mereka tidak akan dapat melihat daftar drop-down.
Jika Anda ingin menampilkan jenis data lain, DataGrid berikan jenis kolom berikut:
Jenis Kolom | Tampilan Data |
---|---|
DataGridHyperlinkColumn | Gunakan untuk menampilkan data URI. |
DataGridCheckBoxColumn | Gunakan untuk menampilkan data Boolean. |
DataGridTextColumn | Gunakan untuk menampilkan teks. |
Jika Anda ingin menggunakan kontrol lain di DataGrid, Anda dapat membuat jenis kolom Anda sendiri dengan menggunakan DataGridTemplateColumn.
Konstruktor
DataGridComboBoxColumn() |
Menginisialisasi instans baru kelas DataGridComboBoxColumn. |
Bidang
DisplayMemberPathProperty |
DisplayMemberPath Mengidentifikasi properti dependensi. |
EditingElementStyleProperty |
EditingElementStyle Mengidentifikasi properti dependensi. |
ElementStyleProperty |
ElementStyle Mengidentifikasi properti dependensi. |
ItemsSourceProperty |
ItemsSource Mengidentifikasi properti dependensi. |
SelectedValuePathProperty |
SelectedValuePath Mengidentifikasi properti dependensi. |
Properti
ActualWidth |
Mendapatkan lebar kolom saat ini, dalam unit independen perangkat (1/96 inci per unit). (Diperoleh dari DataGridColumn) |
CanUserReorder |
Mendapatkan atau mengatur nilai yang menunjukkan apakah pengguna dapat mengubah posisi tampilan kolom dengan menyeret header kolom. (Diperoleh dari DataGridColumn) |
CanUserResize |
Mendapatkan atau mengatur nilai yang menunjukkan apakah pengguna dapat menyesuaikan lebar kolom dengan menggunakan mouse. (Diperoleh dari DataGridColumn) |
CanUserSort |
Mendapatkan atau mengatur nilai yang menunjukkan apakah pengguna dapat mengurutkan kolom dengan mengklik header kolom. (Diperoleh dari DataGridColumn) |
CellStyle |
Mendapatkan atau mengatur gaya yang digunakan untuk merender sel dalam kolom. (Diperoleh dari DataGridColumn) |
ClipboardContentBinding |
Mendapatkan atau mengatur objek pengikatan yang akan digunakan saat mendapatkan atau mengatur konten sel untuk clipboard. |
DataGridOwner |
DataGrid Mendapatkan kontrol yang berisi kolom ini. (Diperoleh dari DataGridColumn) |
DefaultEditingElementStyle |
Mendapatkan nilai EditingElementStyle default properti . |
DefaultElementStyle |
Mendapatkan nilai default dari ElementStyle. |
DependencyObjectType |
Mendapatkan yang membungkus jenis CLR dari instans DependencyObjectType ini. (Diperoleh dari DependencyObject) |
Dispatcher |
Dispatcher Mendapatkan ini DispatcherObject dikaitkan dengan. (Diperoleh dari DispatcherObject) |
DisplayIndex |
Mendapatkan atau mengatur posisi tampilan kolom relatif terhadap kolom lain di DataGrid. (Diperoleh dari DataGridColumn) |
DisplayMemberPath |
Mendapatkan atau mengatur jalur ke nilai pada objek sumber untuk memberikan representasi visual objek. |
DragIndicatorStyle |
Mendapatkan atau mengatur objek gaya untuk diterapkan ke header kolom selama operasi seret. (Diperoleh dari DataGridColumn) |
EditingElementStyle |
Mendapatkan atau mengatur gaya yang digunakan saat merender elemen yang ditampilkan kolom untuk sel dalam mode pengeditan. |
ElementStyle |
Mendapatkan atau mengatur gaya yang digunakan saat merender elemen yang ditampilkan kolom untuk sel yang tidak dalam mode pengeditan. |
Header |
Mendapatkan atau mengatur konten header kolom. (Diperoleh dari DataGridColumn) |
HeaderStringFormat |
Mendapatkan atau mengatur pola format untuk diterapkan ke konten header kolom. (Diperoleh dari DataGridColumn) |
HeaderStyle |
Mendapatkan atau mengatur gaya yang digunakan saat merender header kolom. (Diperoleh dari DataGridColumn) |
HeaderTemplate |
Mendapatkan atau mengatur templat yang menentukan representasi visual header kolom. (Diperoleh dari DataGridColumn) |
HeaderTemplateSelector |
Mendapatkan atau mengatur objek yang memilih templat mana yang akan digunakan untuk header kolom. (Diperoleh dari DataGridColumn) |
IsAutoGenerated |
Mendapatkan nilai yang menunjukkan apakah kolom dibuat secara otomatis. (Diperoleh dari DataGridColumn) |
IsFrozen |
Mendapatkan nilai yang menunjukkan apakah kolom dicegah untuk menggulir secara horizontal. (Diperoleh dari DataGridColumn) |
IsReadOnly |
Mendapatkan atau mengatur nilai yang menunjukkan apakah sel dalam kolom dapat diedit. (Diperoleh dari DataGridColumn) |
IsSealed |
Mendapatkan nilai yang menunjukkan apakah instans ini saat ini disegel (baca-saja). (Diperoleh dari DependencyObject) |
ItemsSource |
Mendapatkan atau mengatur koleksi yang digunakan untuk menghasilkan konten kontrol kotak kombo. |
MaxWidth |
Mendapatkan atau mengatur batasan lebar maksimum kolom. (Diperoleh dari DataGridColumn) |
MinWidth |
Mendapatkan atau mengatur batasan lebar minimum kolom. (Diperoleh dari DataGridColumn) |
SelectedItemBinding |
Mendapatkan atau menyetel pengikatan untuk item yang saat ini dipilih. |
SelectedValueBinding |
Mendapatkan atau mengatur nilai item yang dipilih, yang diperoleh dengan menggunakan SelectedValuePath. |
SelectedValuePath |
Mendapatkan atau mengatur jalur yang digunakan untuk mendapatkan SelectedValue dari SelectedItem. |
SortDirection |
Mendapatkan atau mengatur arah pengurutan (naik atau turun) kolom. (Diperoleh dari DataGridColumn) |
SortMemberPath |
Mendapatkan atau mengatur nama properti, atau hierarki nama properti yang dibatasi titik, yang menunjukkan anggota untuk mengurutkan. (Diperoleh dari DataGridColumn) |
TextBinding |
Mendapatkan atau mengatur pengikatan untuk teks di bagian ComboBox kotak teks kontrol. |
TextBlockComboBoxStyleKey |
Mendapatkan kunci sumber daya untuk gaya yang akan diterapkan ke kotak kombo baca-saja. |
Visibility |
Mendapatkan atau mengatur visibilitas kolom. (Diperoleh dari DataGridColumn) |
Width |
Mendapatkan atau mengatur lebar kolom atau mode ukuran otomatis. (Diperoleh dari DataGridColumn) |
Metode
CancelCellEdit(FrameworkElement, Object) |
Menyebabkan sel kolom diedit kembali ke nilai yang ditentukan. |
CancelCellEdit(FrameworkElement, Object) |
Menyebabkan sel diedit untuk kembali ke nilai asli yang tidak diedit. (Diperoleh dari DataGridColumn) |
CheckAccess() |
Menentukan apakah utas panggilan memiliki akses ke ini DispatcherObject. (Diperoleh dari DispatcherObject) |
ClearValue(DependencyProperty) |
Menghapus nilai lokal properti. Properti yang akan dibersihkan ditentukan oleh DependencyProperty pengidentifikasi. (Diperoleh dari DependencyObject) |
ClearValue(DependencyPropertyKey) |
Menghapus nilai lokal properti baca-saja. Properti yang akan dibersihkan ditentukan oleh DependencyPropertyKey. (Diperoleh dari DependencyObject) |
CoerceValue(DependencyProperty) |
Memaksakan nilai properti dependensi yang ditentukan. Ini dicapai dengan memanggil fungsi apa pun CoerceValueCallback yang ditentukan dalam metadata properti untuk properti dependensi seperti yang ada pada panggilan DependencyObject. (Diperoleh dari DependencyObject) |
CommitCellEdit(FrameworkElement) |
Melakukan validasi yang diperlukan sebelum keluar dari mode pengeditan. |
CommitCellEdit(FrameworkElement) |
Melakukan validasi yang diperlukan sebelum keluar dari mode pengeditan sel. (Diperoleh dari DataGridColumn) |
Equals(Object) |
Menentukan apakah yang disediakan DependencyObject setara dengan saat ini DependencyObject. (Diperoleh dari DependencyObject) |
GenerateEditingElement(DataGridCell, Object) |
Mendapatkan kontrol kotak kombo yang terikat ke nilai kolom SelectedItemBinding, , SelectedValueBindingdan TextBinding . |
GenerateElement(DataGridCell, Object) |
Mendapatkan kontrol kotak kombo baca-saja yang terikat ke nilai kolom SelectedItemBinding, SelectedValueBinding, dan TextBinding . |
GetCellContent(DataGridRow) |
Content Mengambil nilai properti untuk sel di persimpangan kolom ini dan baris yang ditentukan. (Diperoleh dari DataGridColumn) |
GetCellContent(Object) |
Content Mendapatkan nilai properti untuk sel di persimpangan kolom ini dan baris yang mewakili item data yang ditentukan. (Diperoleh dari DataGridColumn) |
GetHashCode() |
Mendapatkan kode hash untuk ini DependencyObject. (Diperoleh dari DependencyObject) |
GetLocalValueEnumerator() |
Membuat enumerator khusus untuk menentukan properti dependensi mana yang memiliki nilai yang ditetapkan secara lokal pada ini DependencyObject. (Diperoleh dari DependencyObject) |
GetType() |
Mendapatkan dari instans Type saat ini. (Diperoleh dari Object) |
GetValue(DependencyProperty) |
Mengembalikan nilai efektif properti dependensi saat ini pada instans ini dari DependencyObject. (Diperoleh dari DependencyObject) |
InvalidateProperty(DependencyProperty) |
Mengevaluasi kembali nilai efektif untuk properti dependensi yang ditentukan. (Diperoleh dari DependencyObject) |
MemberwiseClone() |
Membuat salinan dangkal dari saat ini Object. (Diperoleh dari Object) |
NotifyPropertyChanged(String) |
Memberi tahu DataGrid yang berisi kolom ini bahwa properti kolom telah berubah. (Diperoleh dari DataGridColumn) |
OnCoerceIsReadOnly(Boolean) |
Menentukan nilai IsReadOnly properti berdasarkan aturan properti dari DataGrid yang berisi kolom ini. |
OnCopyingCellClipboardContent(Object) |
Memunculkan kejadian CopyingCellClipboardContent. (Diperoleh dari DataGridColumn) |
OnPastingCellClipboardContent(Object, Object) |
Memunculkan kejadian PastingCellClipboardContent. (Diperoleh dari DataGridColumn) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Dipanggil setiap kali nilai efektif dari properti dependensi apa pun pada ini DependencyObject telah diperbarui. Properti dependensi tertentu yang berubah dilaporkan dalam data peristiwa. (Diperoleh dari DependencyObject) |
OnSelectedItemBindingChanged(BindingBase, BindingBase) |
Memberi tahu DataGrid kapan SelectedItemBinding properti berubah. |
OnSelectedValueBindingChanged(BindingBase, BindingBase) |
Memberi tahu DataGrid kapan SelectedValueBinding properti berubah. |
OnTextBindingChanged(BindingBase, BindingBase) |
Memberi tahu DataGrid kapan TextBinding properti berubah. |
PrepareCellForEdit(FrameworkElement, RoutedEventArgs) |
Dipanggil saat sel dalam kolom memasuki mode pengeditan. |
ReadLocalValue(DependencyProperty) |
Mengembalikan nilai lokal properti dependensi, jika ada. (Diperoleh dari DependencyObject) |
RefreshCellContent(FrameworkElement, String) |
Merefresh konten sel dalam kolom sebagai respons terhadap perubahan pengikatan. |
SetCurrentValue(DependencyProperty, Object) |
Mengatur nilai properti dependensi tanpa mengubah sumber nilainya. (Diperoleh dari DependencyObject) |
SetValue(DependencyProperty, Object) |
Mengatur nilai lokal properti dependensi, yang ditentukan oleh pengidentifikasi properti dependensinya. (Diperoleh dari DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Mengatur nilai lokal properti dependensi baca-saja, yang ditentukan oleh DependencyPropertyKey pengidentifikasi properti dependensi. (Diperoleh dari DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Mengembalikan nilai yang menunjukkan apakah proses serialisasi harus menserialisasikan nilai untuk properti dependensi yang disediakan. (Diperoleh dari DependencyObject) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
VerifyAccess() |
Memberlakukan bahwa utas panggilan memiliki akses ke ini DispatcherObject. (Diperoleh dari DispatcherObject) |
Acara
CopyingCellClipboardContent |
Terjadi setelah konten clipboard sel disiapkan. (Diperoleh dari DataGridColumn) |
PastingCellClipboardContent |
Terjadi sebelum konten papan klip dipindahkan ke sel. (Diperoleh dari DataGridColumn) |