Aracılığıyla paylaş


DataGridComboBoxColumn Sınıf

Tanım

Hücrelerinde denetimleri barındıran ComboBox bir DataGrid sütunu temsil eder.

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
Devralma

Örnekler

Aşağıdaki örnekte, sütundaki her ComboBox biri için açılan listenin bir sabit listesinin değerleriyle nasıl doldurulacakları gösterilmektedir. Açılan listede seçili öğe, özelliği her satırda görüntülenen nesnenin özelliğine ayarlanarak SelectedItemBinding bağlanır.

<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

Açıklamalar

Bir sabit listesi gibi, aralarından seçim yapabileceğiniz bir öğe kümesinin bulunduğu verileri görüntülemek için kullanın DataGridComboBoxColumn . DataGridComboBoxColumn kullanıcıların açılan listeden bir öğe seçmesine olanak tanır. Aşağıdaki çizimde bir DataGridComboBoxColumngösterilmektedir.

DataGridComboBoxColumn

Açılan listeyi doldurmak içinComboBox, önce aşağıdaki seçeneklerden birini kullanarak öğesinin özelliğini ayarlayınItemsSource:

ItemsSource ayarlandıktan sonra içindeki seçili öğeyi ComboBox hücrenin içinde olduğu satırın veri öğesine bağlayın. Bağlamayı aşağıdaki özelliklerden birini kullanarak ayarlayabilirsiniz:

Özellik Açıklama
TextBinding Seçili durumdaki öğe için metnin bağlama yolunu ayarlar.
SelectedItemBinding Seçili durumdaki nesnenin bağlama yolunu ayarlar.
SelectedValueBinding Bağlama yolunu özelliği tarafından SelectedValuePath belirtilen seçili öğenin değerine ayarlar.

IsReadOnly özelliği olarak trueayarlandığında, kullanıcılar sütunu düzenleyemez ve açılan listeyi göremez.

Diğer veri türlerini görüntülemek istiyorsanız, DataGrid aşağıdaki sütun türlerini sağlar:

Sütun Türü Veri Görüntüleme
DataGridHyperlinkColumn URI verilerini görüntülemek için kullanın.
DataGridCheckBoxColumn Boole verilerini görüntülemek için kullanın.
DataGridTextColumn Metin görüntülemek için kullanın.

içinde DataGridbaşka denetimler kullanmak istiyorsanız kullanarak DataGridTemplateColumnkendi sütun türlerinizi oluşturabilirsiniz.

Oluşturucular

DataGridComboBoxColumn()

DataGridComboBoxColumn sınıfının yeni bir örneğini başlatır.

Alanlar

DisplayMemberPathProperty

DisplayMemberPath Bağımlılık özelliğini tanımlar.

EditingElementStyleProperty

EditingElementStyle Bağımlılık özelliğini tanımlar.

ElementStyleProperty

ElementStyle Bağımlılık özelliğini tanımlar.

ItemsSourceProperty

ItemsSource Bağımlılık özelliğini tanımlar.

SelectedValuePathProperty

SelectedValuePath Bağımlılık özelliğini tanımlar.

Özellikler

ActualWidth

Cihazdan bağımsız birimlerde (birim başına 1/96 inç) sütunun geçerli genişliğini alır.

(Devralındığı yer: DataGridColumn)
CanUserReorder

Kullanıcının sütun üst bilgisini sürükleyerek sütun görüntüleme konumunu değiştirip değiştiremeyeceğini belirten bir değer alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
CanUserResize

Kullanıcının fareyi kullanarak sütun genişliğini ayarlayıp ayarlayamayacağını belirten bir değer alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
CanUserSort

Kullanıcının sütun üst bilgisine tıklayarak sütunu sıralayıp sıralayamayacağını belirten bir değer alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
CellStyle

Sütundaki hücreleri işlemek için kullanılan stili alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
ClipboardContentBinding

Pano için hücre içeriğini alırken veya ayarlarken kullanılacak bağlama nesnesini alır veya ayarlar.

DataGridOwner

DataGrid Bu sütunu içeren denetimi alır.

(Devralındığı yer: DataGridColumn)
DefaultEditingElementStyle

Özelliğin varsayılan değerini EditingElementStyle alır.

DefaultElementStyle

varsayılan değerini ElementStylealır.

DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğunu alır.

(Devralındığı yer: DispatcherObject)
DisplayIndex

sütunun görüntüleme konumunu içindeki DataGriddiğer sütunlara göre alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
DisplayMemberPath

Nesnenin görsel gösterimini sağlamak için kaynak nesnedeki bir değerin yolunu alır veya ayarlar.

DragIndicatorStyle

Sürükleme işlemi sırasında sütun başlığına uygulanacak stil nesnesini alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
EditingElementStyle

Düzenleme modunda bir hücre için sütunun görüntülediği öğe işlenirken kullanılan stili alır veya ayarlar.

ElementStyle

Düzenleme modunda olmayan bir hücre için sütunun görüntülediği öğe işlenirken kullanılan stili alır veya ayarlar.

Header

Sütun üst bilgisinin içeriğini alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
HeaderStringFormat

Sütun üst bilgisinin içeriğine uygulanacak biçim desenini alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
HeaderStyle

Sütun üst bilgisi işlenirken kullanılan stili alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
HeaderTemplate

Sütun başlığının görsel gösterimini tanımlayan şablonu alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
HeaderTemplateSelector

Sütun başlığı için hangi şablonun kullanılacağını seçen nesneyi alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
IsAutoGenerated

Sütunun otomatik olarak oluşturulup oluşturulmadığını belirten bir değer alır.

(Devralındığı yer: DataGridColumn)
IsFrozen

Sütunun yatay olarak kaydırılmasının engellenip engellenmediğini gösteren bir değer alır.

(Devralındığı yer: DataGridColumn)
IsReadOnly

Sütundaki hücrelerin düzenlenip düzenlenemeyeceğini belirten bir değer alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
IsSealed

Bu örneğin şu anda korumalı olup olmadığını belirten bir değer alır (salt okunur).

(Devralındığı yer: DependencyObject)
ItemsSource

Birleşik giriş kutusu denetiminin içeriğini oluşturmak için kullanılan bir koleksiyonu alır veya ayarlar.

MaxWidth

Sütunun en büyük genişlik kısıtlamasını alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
MinWidth

Sütunun en düşük genişlik kısıtlamasını alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
SelectedItemBinding

Seçili durumdaki öğe için bağlamayı alır veya ayarlar.

SelectedValueBinding

kullanılarak SelectedValuePathelde edilen seçili öğenin değerini alır veya ayarlar.

SelectedValuePath

yolundan SelectedItemalmak SelectedValue için kullanılan yolu alır veya ayarlar.

SortDirection

Sütunun sıralama yönünü (artan veya azalan) alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
SortMemberPath

Sıralama ölçütü olarak üyeyi gösteren bir özellik adını veya noktayla ayrılmış bir özellik adları hiyerarşisini alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
TextBinding

Denetimin metin kutusu bölümündeki metin için bağlamayı ComboBox alır veya ayarlar.

TextBlockComboBoxStyleKey

Stilin salt okunur birleşik giriş kutusuna uygulanacağı kaynak anahtarını alır.

Visibility

Sütunun görünürlüğünü alır veya ayarlar.

(Devralındığı yer: DataGridColumn)
Width

Sütun genişliğini veya otomatik boyutlandırma modunu alır veya ayarlar.

(Devralındığı yer: DataGridColumn)

Yöntemler

CancelCellEdit(FrameworkElement, Object)

Düzenlenen sütun hücresinin belirtilen değere geri döndürülmesini neden olur.

CancelCellEdit(FrameworkElement, Object)

Düzenlenen hücrenin özgün, düzenlenmemiş değere geri dönmesine neden olur.

(Devralındığı yer: DataGridColumn)
CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında DependencyObjectvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir CoerceValueCallback işlevi çağırarak gerçekleştirilir.

(Devralındığı yer: DependencyObject)
CommitCellEdit(FrameworkElement)

Düzenleme modundan çıkmadan önce gerekli doğrulamayı gerçekleştirir.

CommitCellEdit(FrameworkElement)

Hücre düzenleme modundan çıkmadan önce gerekli doğrulamayı gerçekleştirir.

(Devralındığı yer: DataGridColumn)
Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
GenerateEditingElement(DataGridCell, Object)

Sütunun SelectedItemBinding, SelectedValueBindingve TextBinding değerlerine bağlı bir birleşik giriş kutusu denetimi alır.

GenerateElement(DataGridCell, Object)

Sütunun SelectedItemBinding, SelectedValueBindingve TextBinding değerlerine bağlı salt okunur bir birleşik giriş kutusu denetimi alır.

GetCellContent(DataGridRow)

Bu sütunun Content ve belirtilen satırın kesişiminde hücrenin özellik değerini alır.

(Devralındığı yer: DataGridColumn)
GetCellContent(Object)

Bu sütunun Content kesişim noktasındaki hücrenin ve belirtilen veri öğesini temsil eden satırın özellik değerini alır.

(Devralındığı yer: DataGridColumn)
GetHashCode()

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özelleştirilmiş bir numaralandırıcı oluşturur.

(Devralındığı yer: DependencyObject)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bağımlılık özelliğinin DependencyObjectgeçerli geçerli değerini döndürür.

(Devralındığı yer: DependencyObject)
InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

(Devralındığı yer: DependencyObject)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
NotifyPropertyChanged(String)

DataGrid Bu sütunu içeren öğesine bir sütun özelliğinin değiştiğini bildirir.

(Devralındığı yer: DataGridColumn)
OnCoerceIsReadOnly(Boolean)

Özelliğin IsReadOnly değerini, bu sütunu içeren özelliğindeki DataGrid özellik kurallarına göre belirler.

OnCopyingCellClipboardContent(Object)

Olayı tetikler CopyingCellClipboardContent .

(Devralındığı yer: DataGridColumn)
OnPastingCellClipboardContent(Object, Object)

Olayı tetikler PastingCellClipboardContent .

(Devralındığı yer: DataGridColumn)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Üzerindeki DependencyObject herhangi bir bağımlılık özelliğinin etkin değeri her güncelleştirildiğinde çağrılır. Değiştirilen belirli bağımlılık özelliği olay verilerinde bildirilir.

(Devralındığı yer: DependencyObject)
OnSelectedItemBindingChanged(BindingBase, BindingBase)

Özelliğin DataGrid ne zaman SelectedItemBinding değiştiğini bildirir.

OnSelectedValueBindingChanged(BindingBase, BindingBase)

Özelliğin DataGrid ne zaman SelectedValueBinding değiştiğini bildirir.

OnTextBindingChanged(BindingBase, BindingBase)

Özelliğin DataGrid ne zaman TextBinding değiştiğini bildirir.

PrepareCellForEdit(FrameworkElement, RoutedEventArgs)

Sütundaki bir hücre düzenleme moduna girdiğinde çağrılır.

ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
RefreshCellContent(FrameworkElement, String)

Bağlama değişikliğine yanıt olarak sütundaki bir hücrenin içeriğini yeniler.

SetCurrentValue(DependencyProperty, Object)

Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini belirten bir değer döndürür.

(Devralındığı yer: DependencyObject)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)
VerifyAccess()

Çağıran iş parçacığının bu DispatcherObjecterişimine sahip olmasını zorlar.

(Devralındığı yer: DispatcherObject)

Ekinlikler

CopyingCellClipboardContent

Hücre panosu içeriği hazırlandıktan sonra gerçekleşir.

(Devralındığı yer: DataGridColumn)
PastingCellClipboardContent

Pano içeriği hücreye taşınmadan önce gerçekleşir.

(Devralındığı yer: DataGridColumn)

Şunlara uygulanır