DataGridComboBoxColumn Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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
- Ereditarietà
Esempio
Nell'esempio seguente viene illustrato come popolare l'elenco a discesa per ognuno ComboBox della colonna con i valori di un'enumerazione. L'elemento selezionato nell'elenco a discesa è associato impostando la SelectedItemBinding proprietà sulla proprietà dell'oggetto visualizzato in ogni riga.
<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
Commenti
Usare DataGridComboBoxColumn per visualizzare i dati in cui è disponibile un set di elementi da scegliere, ad esempio un'enumerazione. DataGridComboBoxColumn consente agli utenti di selezionare un elemento da un elenco a discesa. La figura seguente mostra un DataGridComboBoxColumnoggetto .
Per popolare l'elenco a discesa, impostare prima di tutto la ItemsSource proprietà per utilizzando ComboBox una delle opzioni seguenti:
Una risorsa statica. Per altre informazioni, vedere StaticResource Markup Extension.For more information, see StaticResource Markup Extension.
Entità di codice x:Static. Per altre informazioni, vedere x:Static Markup Extension.
Raccolta inline di ComboBoxItem tipi.
Dopo aver ItemsSource impostato , associare l'elemento selezionato nell'oggetto ComboBox all'elemento di dati per la riga in cui si trova la cella. È possibile impostare l'associazione usando una delle proprietà seguenti:
Proprietà | Descrizione |
---|---|
TextBinding | Imposta il percorso di associazione del testo per l'elemento attualmente selezionato. |
SelectedItemBinding | Imposta il percorso di associazione dell'oggetto attualmente selezionato. |
SelectedValueBinding | Imposta il percorso di associazione sul valore dell'elemento selezionato specificato dalla SelectedValuePath proprietà . |
Quando la IsReadOnly proprietà è impostata su true
, gli utenti non possono modificare la colonna e non potranno visualizzare l'elenco a discesa.
Se si desidera visualizzare altri tipi di dati, DataGrid vengono forniti i tipi di colonna seguenti:
Tipo di colonna | Visualizzazione dei dati |
---|---|
DataGridHyperlinkColumn | Usare per visualizzare i dati URI. |
DataGridCheckBoxColumn | Usare per visualizzare i dati booleani. |
DataGridTextColumn | Usare per visualizzare il testo. |
Se si desidera usare altri controlli in DataGrid, è possibile creare tipi di colonna personalizzati usando DataGridTemplateColumn.
Costruttori
DataGridComboBoxColumn() |
Inizializza una nuova istanza della classe DataGridComboBoxColumn. |
Campi
DisplayMemberPathProperty |
Identifica la proprietà di dipendenza DisplayMemberPath. |
EditingElementStyleProperty |
Identifica la proprietà di dipendenza EditingElementStyle. |
ElementStyleProperty |
Identifica la proprietà di dipendenza ElementStyle. |
ItemsSourceProperty |
Identifica la proprietà di dipendenza ItemsSource. |
SelectedValuePathProperty |
Identifica la proprietà di dipendenza SelectedValuePath. |
Proprietà
ActualWidth |
Ottiene la larghezza corrente della colonna, in unità indipendenti dal dispositivo (1/96° pollice per unità). (Ereditato da DataGridColumn) |
CanUserReorder |
Recupera o imposta un valore che indica se l'utente può modificare la posizione di visualizzazione delle colonne trascinando le intestazioni delle colonne. (Ereditato da DataGridColumn) |
CanUserResize |
Ottiene o imposta un valore che indica se l'utente può regolare la larghezza delle colonne utilizzando il mouse. (Ereditato da DataGridColumn) |
CanUserSort |
Recupera o imposta un valore che indica se l'utente può ordinare la colonna facendo clic sull'intestazione. (Ereditato da DataGridColumn) |
CellStyle |
Ottiene o imposta lo stile utilizzato per il rendering delle celle nella colonna. (Ereditato da DataGridColumn) |
ClipboardContentBinding |
Ottiene o imposta l'oggetto di associazione da utilizzare quando si ottiene o si imposta il contenuto della cella per gli Appunti. |
DataGridOwner |
Ottiene il controllo DataGrid che contiene questa colonna. (Ereditato da DataGridColumn) |
DefaultEditingElementStyle |
Ottiene il valore predefinito della proprietà EditingElementStyle. |
DefaultElementStyle |
Ottiene il valore predefinito di ElementStyle. |
DependencyObjectType |
Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza. (Ereditato da DependencyObject) |
Dispatcher |
Ottiene l'oggetto Dispatcher associato a DispatcherObject. (Ereditato da DispatcherObject) |
DisplayIndex |
Ottiene o imposta la posizione di visualizzazione della colonna relativa alle altre colonne presenti nell'oggetto DataGrid. (Ereditato da DataGridColumn) |
DisplayMemberPath |
Ottiene o imposta un percorso su un valore sull'oggetto di origine per fornire la rappresentazione visiva dell'oggetto. |
DragIndicatorStyle |
Ottiene o imposta l'oggetto stile da applicare all'intestazione di colonna durante un'operazione di trascinamento. (Ereditato da DataGridColumn) |
EditingElementStyle |
Ottiene o imposta lo stile utilizzato quando viene eseguito il rendering dell'elemento visualizzato dalla colonna per una cella in modalità di modifica. |
ElementStyle |
Ottiene o imposta lo stile utilizzato quando viene eseguito il rendering dell'elemento visualizzato dalla colonna per una cella non in modalità di modifica. |
Header |
Recupera o imposta il contenuto dell'intestazione della colonna. (Ereditato da DataGridColumn) |
HeaderStringFormat |
Ottiene o imposta il modello di formato da applicare al contenuto dell'intestazione di colonna. (Ereditato da DataGridColumn) |
HeaderStyle |
Ottiene o imposta lo stile utilizzato per il rendering dell'intestazione di colonna. (Ereditato da DataGridColumn) |
HeaderTemplate |
Ottiene o imposta il modello che definisce la rappresentazione visiva dell'intestazione di colonna. (Ereditato da DataGridColumn) |
HeaderTemplateSelector |
Ottiene o imposta l'oggetto che consente la selezione del modello da utilizzare per l'intestazione di colonna. (Ereditato da DataGridColumn) |
IsAutoGenerated |
Ottiene un valore che indica se la colonna viene generata automaticamente. (Ereditato da DataGridColumn) |
IsFrozen |
Ottiene un valore che indica se non è possibile scorrere la colonna orizzontalmente. (Ereditato da DataGridColumn) |
IsReadOnly |
Recupera o imposta un valore che indica se è possibile modificare le celle nella colonna. (Ereditato da DataGridColumn) |
IsSealed |
Ottiene un valore che indica se l'istanza è attualmente sealed (di sola lettura). (Ereditato da DependencyObject) |
ItemsSource |
Ottiene o imposta un insieme utilizzato per generare il contenuto della casella combinata. |
MaxWidth |
Ottiene o imposta il vincolo di larghezza massima della colonna. (Ereditato da DataGridColumn) |
MinWidth |
Ottiene o imposta il vincolo di larghezza minima della colonna. (Ereditato da DataGridColumn) |
SelectedItemBinding |
Ottiene o imposta l'associazione per l'elemento attualmente selezionato. |
SelectedValueBinding |
Ottiene o imposta il valore dell'elemento selezionato ottenuto mediante SelectedValuePath. |
SelectedValuePath |
Ottiene o imposta il percorso utilizzato per ottenere la proprietà SelectedValue dalla proprietà SelectedItem. |
SortDirection |
Ottiene o imposta il tipo di ordinamento (crescente o decrescente) della colonna. (Ereditato da DataGridColumn) |
SortMemberPath |
Recupera o imposta un nome di proprietà o una gerarchia di nomi di proprietà separati da punti, che indica il membro in base al quale eseguire l'ordinamento. (Ereditato da DataGridColumn) |
TextBinding |
Ottiene o imposta l'associazione per il testo nella parte di casella di testo del controllo ComboBox. |
TextBlockComboBoxStyleKey |
Ottiene la chiave di risorsa per lo stile da applicare ad una casella combinata di sola lettura. |
Visibility |
Recupera o imposta la visibilità della colonna. (Ereditato da DataGridColumn) |
Width |
Recupera o imposta la larghezza della colonna o la modalità di ridimensionamento automatico. (Ereditato da DataGridColumn) |
Metodi
CancelCellEdit(FrameworkElement, Object) |
Provoca la modifica della cella della colonna per ripristinare il valore specificato. |
CancelCellEdit(FrameworkElement, Object) |
Provoca la modifica della cella per ripristinare il valore originale, non modificato. (Ereditato da DataGridColumn) |
CheckAccess() |
Determina se il thread chiamante ha accesso a DispatcherObject. (Ereditato da DispatcherObject) |
ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà. La proprietà da cancellare è specificata da un identificatore DependencyProperty. (Ereditato da DependencyObject) |
ClearValue(DependencyPropertyKey) |
Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey. (Ereditato da DependencyObject) |
CoerceValue(DependencyProperty) |
Assegna forzatamente il valore della proprietà di dipendenza specificata. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante. (Ereditato da DependencyObject) |
CommitCellEdit(FrameworkElement) |
Esegue una convalida richiesta prima di uscire dalla modalità di modifica. |
CommitCellEdit(FrameworkElement) |
Esegue una convalida richiesta prima di uscire dalla modalità di modifica delle celle. (Ereditato da DataGridColumn) |
Equals(Object) |
Determina se l'oggetto DependencyObject specificato equivale all'oggetto DependencyObject corrente. (Ereditato da DependencyObject) |
GenerateEditingElement(DataGridCell, Object) |
Ottiene una casella combinata associata ai valori SelectedItemBinding, SelectedValueBinding e TextBinding della colonna. |
GenerateElement(DataGridCell, Object) |
Ottiene una casella combinata di sola lettura associata ai valori SelectedItemBinding, SelectedValueBinding e TextBinding della colonna. |
GetCellContent(DataGridRow) |
Recupera il valore della proprietà Content per la cella in corrispondenza dell'intersezione della colonna e della riga specificata. (Ereditato da DataGridColumn) |
GetCellContent(Object) |
Ottiene il valore della proprietà Content per la cella in corrispondenza dell'intersezione della colonna e della riga che rappresenta l'elemento dati specificato. (Ereditato da DataGridColumn) |
GetHashCode() |
Ottiene un codice hash per l'oggetto DependencyObject. (Ereditato da DependencyObject) |
GetLocalValueEnumerator() |
Crea un enumeratore specializzato per determinare le proprietà di dipendenza che presentano valori impostati localmente nell'oggetto DependencyObject. (Ereditato da DependencyObject) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject. (Ereditato da DependencyObject) |
InvalidateProperty(DependencyProperty) |
Valuta di nuovo il valore effettivo della proprietà di dipendenza specificata. (Ereditato da DependencyObject) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
NotifyPropertyChanged(String) |
Notifica all'oggetto DataGrid che contiene questa colonna che una proprietà della colonna è stata modificata. (Ereditato da DataGridColumn) |
OnCoerceIsReadOnly(Boolean) |
Determina il valore della proprietà IsReadOnly in base alle regole della proprietà della DataGrid che contiene questa colonna. |
OnCopyingCellClipboardContent(Object) |
Genera l'evento CopyingCellClipboardContent. (Ereditato da DataGridColumn) |
OnPastingCellClipboardContent(Object, Object) |
Genera l'evento PastingCellClipboardContent. (Ereditato da DataGridColumn) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento. (Ereditato da DependencyObject) |
OnSelectedItemBindingChanged(BindingBase, BindingBase) |
Notifica all'oggetto DataGrid quando la proprietà SelectedItemBinding viene modificata. |
OnSelectedValueBindingChanged(BindingBase, BindingBase) |
Notifica all'oggetto DataGrid quando la proprietà SelectedValueBinding viene modificata. |
OnTextBindingChanged(BindingBase, BindingBase) |
Notifica all'oggetto DataGrid quando la proprietà TextBinding viene modificata. |
PrepareCellForEdit(FrameworkElement, RoutedEventArgs) |
Chiamato quando per una cella della colonna viene attivata la modalità di modifica. |
ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se esistente. (Ereditato da DependencyObject) |
RefreshCellContent(FrameworkElement, String) |
Aggiorna il contenuto di una cella della colonna in risposta alla modifica di un'associazione. |
SetCurrentValue(DependencyProperty, Object) |
Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore. (Ereditato da DependencyObject) |
SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza. (Ereditato da DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza. (Ereditato da DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata. (Ereditato da DependencyObject) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
VerifyAccess() |
Impone che il thread chiamante abbia accesso a DispatcherObject. (Ereditato da DispatcherObject) |
Eventi
CopyingCellClipboardContent |
Si verifica dopo la preparazione del contenuto degli Appunti della cella. (Ereditato da DataGridColumn) |
PastingCellClipboardContent |
Si verifica prima dello spostamento del contenuto degli Appunti nella cella. (Ereditato da DataGridColumn) |