DataGridHyperlinkColumn 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 DataGridHyperlinkColumn : System::Windows::Controls::DataGridBoundColumn
public class DataGridHyperlinkColumn : System.Windows.Controls.DataGridBoundColumn
type DataGridHyperlinkColumn = class
inherit DataGridBoundColumn
Public Class DataGridHyperlinkColumn
Inherits DataGridBoundColumn
- Ereditarietà
Esempio
Nell'esempio Uri seguente viene illustrato un DataGridHyperlinkColumn oggetto che imposta con la Binding proprietà e il testo del collegamento ipertestuale con la ContentBinding proprietà . L'evento Hyperlink.Click viene gestito automaticamente perché NavigationWindow è l'elemento padre di DataGrid.
<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 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>
<!--The Email property contains a URI. For example "mailto:lucy0@adventure-works.com"-->
<DataGridHyperlinkColumn Header="Email" Binding="{Binding Email}" ContentBinding="{Binding Email, Converter={StaticResource EmailConverter}}" />
</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
}
End Class
//Converts the mailto uri to a string with just the customer alias
public class EmailConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value != null)
{
string email = value.ToString();
int index = email.IndexOf("@");
string alias = email.Substring(7, index-7);
return alias;
}
else
{
string email = "";
return email;
}
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
Uri email = new Uri((string)value);
return email;
}
}
'Converts the mailto uri to a string with just the customer alias
Public Class EmailConverter
Implements IValueConverter
Public Function Convert(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.Convert
If value IsNot Nothing Then
Dim email As String = value.ToString()
Dim index As Integer = email.IndexOf("@")
Dim [alias] As String = email.Substring(7, index - 7)
Return [alias]
Else
Dim email As String = ""
Return email
End If
End Function
Public Function ConvertBack(value As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IValueConverter.ConvertBack
Dim email As New Uri(DirectCast(value, String))
Return email
End Function
End Class
Commenti
Usare DataGridHyperlinkColumn per visualizzare i dati che contengono un Urioggetto , ad esempio un indirizzo HTTP o un indirizzo di posta elettronica. La figura seguente mostra un esempio di .DataGridHyperlinkColumn
Annotazioni
Hyperlink la navigazione può verificarsi solo se l'elemento padre diretto o indiretto di un Hyperlink oggetto è un host di navigazione. Esempi di host di spostamento includono NavigationWindow, Frameo qualsiasi browser in grado di ospitare XBAP. Per altre informazioni, vedere l'articolo "Host di spostamento" in Panoramica della navigazione.
Per altre informazioni sul supporto XBAP, vedere Domande frequenti sulle applicazioni ospitate dal browser WPF (XBAP).
Per popolare la colonna, associare la colonna ai Uri dati usando la Binding proprietà . Per visualizzare il testo del collegamento ipertestuale diverso dalla stringa URI, associare il valore di ContentBinding testo alla proprietà . La Binding proprietà viene applicata all'elemento Hyperlink o TextBox creato nella colonna . L'oggetto DataContext per l'elemento in ogni cella è l'elemento di dati della riga in cui si trova la cella. Pertanto, per configurare l'associazione è necessario impostare solo .Binding.Path Facoltativamente, è possibile specificare se Binding.Converter si desidera convertire i dati. Per altre informazioni sul data binding, vedere Data Binding (WPF).
Annotazioni
DataGridHyperlinkColumn crea un Hyperlink elemento nella modalità di non modifica e un TextBox elemento nella modalità di modifica.
Se si desidera visualizzare altri tipi di dati, DataGrid vengono forniti i tipi di colonna seguenti:
| Tipo di colonna | Visualizzazione dati |
|---|---|
| DataGridCheckBoxColumn | Utilizzare per visualizzare i dati booleani. |
| DataGridComboBoxColumn | Utilizzare per visualizzare i dati di enumerazione. |
| DataGridTextColumn | Usare per visualizzare il testo. |
Se si vogliono usare altri controlli in DataGrid, è possibile creare tipi di colonna personalizzati usando DataGridTemplateColumn.
Costruttori
| Nome | Descrizione |
|---|---|
| DataGridHyperlinkColumn() |
Inizializza una nuova istanza della classe DataGridHyperlinkColumn. |
Campi
| Nome | Descrizione |
|---|---|
| TargetNameProperty |
Identifica la TargetName proprietà di dipendenza. |
Proprietà
| Nome | Descrizione |
|---|---|
| ActualWidth |
Ottiene la larghezza corrente della colonna, in unità indipendenti dal dispositivo (1/96 pollici per unità). (Ereditato da DataGridColumn) |
| Binding |
Ottiene o imposta l'associazione che associa la colonna a una proprietà nell'origine dati. (Ereditato da DataGridBoundColumn) |
| CanUserReorder |
Ottiene o imposta un valore che indica se l'utente può modificare la posizione di visualizzazione della colonna trascinando l'intestazione di colonna. (Ereditato da DataGridColumn) |
| CanUserResize |
Ottiene o imposta un valore che indica se l'utente può regolare la larghezza della colonna utilizzando il mouse. (Ereditato da DataGridColumn) |
| CanUserSort |
Ottiene o imposta un valore che indica se l'utente può ordinare la colonna facendo clic sull'intestazione di colonna. (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 per ottenere o impostare il contenuto della cella per gli Appunti. (Ereditato da DataGridBoundColumn) |
| ContentBinding |
Ottiene o imposta l'associazione al testo del collegamento ipertestuale. |
| DataGridOwner |
Ottiene il DataGrid controllo che contiene questa colonna. (Ereditato da DataGridColumn) |
| DefaultEditingElementStyle |
Valore predefinito della EditingElementStyle proprietà. |
| DefaultElementStyle |
Valore predefinito della ElementStyle proprietà. |
| DependencyObjectType |
Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza. (Ereditato da DependencyObject) |
| Dispatcher |
Ottiene l'oggetto DispatcherDispatcherObject a cui è associato. (Ereditato da DispatcherObject) |
| DisplayIndex |
Ottiene o imposta la posizione di visualizzazione della colonna rispetto alle altre colonne dell'oggetto DataGrid. (Ereditato da DataGridColumn) |
| 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 durante il rendering dell'elemento visualizzato dalla colonna per una cella in modalità di modifica. (Ereditato da DataGridBoundColumn) |
| ElementStyle |
Ottiene o imposta lo stile utilizzato durante il rendering dell'elemento visualizzato dalla colonna per una cella che non è in modalità di modifica. (Ereditato da DataGridBoundColumn) |
| Header |
Ottiene o imposta il contenuto dell'intestazione di 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 seleziona il 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 la colonna non può scorrere orizzontalmente. (Ereditato da DataGridColumn) |
| IsReadOnly |
Ottiene o imposta un valore che indica se è possibile modificare le celle della colonna. (Ereditato da DataGridColumn) |
| IsSealed |
Ottiene un valore che indica se questa istanza è attualmente sealed (sola lettura). (Ereditato da DependencyObject) |
| 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) |
| SortDirection |
Ottiene o imposta la direzione di ordinamento (crescente o decrescente) della colonna. (Ereditato da DataGridColumn) |
| SortMemberPath |
Ottiene o imposta un nome di proprietà o una gerarchia delimitata da punti di nomi di proprietà, che indica il membro da ordinare. (Ereditato da DataGridColumn) |
| TargetName |
Ottiene o imposta il nome di una finestra o di un frame di destinazione per il collegamento ipertestuale. |
| Visibility |
Ottiene o imposta la visibilità della colonna. (Ereditato da DataGridColumn) |
| Width |
Ottiene o imposta la larghezza della colonna o la modalità di ridimensionamento automatico. (Ereditato da DataGridColumn) |
Metodi
| Nome | Descrizione |
|---|---|
| CancelCellEdit(FrameworkElement, Object) |
Determina la modifica della cella di colonna per ripristinare il valore specificato. |
| CancelCellEdit(FrameworkElement, Object) |
Fa sì che la cella venga modificata ripristinando il valore originale non modificato. (Ereditato da DataGridColumn) |
| CheckAccess() |
Determina se il thread chiamante ha accesso a questo DispatcherObjectoggetto . (Ereditato da DispatcherObject) |
| ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà. La proprietà da cancellare viene specificata da un DependencyProperty identificatore. (Ereditato da DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare viene specificata da un oggetto DependencyPropertyKey. (Ereditato da DependencyObject) |
| CoerceValue(DependencyProperty) |
Forza il valore della proprietà di dipendenza specificata. A tale scopo, richiamare qualsiasi CoerceValueCallback funzione specificata nei metadati della proprietà per la proprietà di dipendenza così come esiste nella chiamata DependencyObjectdi . (Ereditato da DependencyObject) |
| CommitCellEdit(FrameworkElement) |
Esegue qualsiasi convalida necessaria prima di uscire dalla modalità di modifica. |
| CommitCellEdit(FrameworkElement) |
Esegue qualsiasi convalida necessaria prima di uscire dalla modalità di modifica delle celle. (Ereditato da DataGridColumn) |
| Equals(Object) |
Determina se un oggetto specificato DependencyObject è equivalente all'oggetto corrente DependencyObject. (Ereditato da DependencyObject) |
| GenerateEditingElement(DataGridCell, Object) |
Ottiene un elemento modificabile TextBox associato al valore della proprietà della ContentBinding colonna. |
| GenerateElement(DataGridCell, Object) |
Ottiene un elemento di sola Hyperlink lettura associato al valore della proprietà della ContentBinding colonna. |
| GetCellContent(DataGridRow) |
Recupera il Content valore della proprietà per la cella all'intersezione di questa colonna e della riga specificata. (Ereditato da DataGridColumn) |
| GetCellContent(Object) |
Ottiene il Content valore della proprietà per la cella all'intersezione di questa colonna e la riga che rappresenta l'elemento di dati specificato. (Ereditato da DataGridColumn) |
| GetHashCode() |
Ottiene un codice hash per l'oggetto DependencyObject. (Ereditato da DependencyObject) |
| GetLocalValueEnumerator() |
Crea un enumeratore specializzato per determinare quali proprietà di dipendenza hanno valori impostati localmente in questo DependencyObjectoggetto . (Ereditato da DependencyObject) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di un oggetto DependencyObject. (Ereditato da DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Rivaluta il valore effettivo per la proprietà di dipendenza specificata. (Ereditato da DependencyObject) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| NotifyPropertyChanged(String) |
Notifica all'oggetto DataGrid che contiene questa colonna che una proprietà di colonna è stata modificata. (Ereditato da DataGridColumn) |
| OnBindingChanged(BindingBase, BindingBase) |
Notifica all'oggetto DataGrid quando viene modificato il valore della Binding proprietà. (Ereditato da DataGridBoundColumn) |
| OnCoerceIsReadOnly(Boolean) |
Determina il valore della IsReadOnly proprietà in base alle regole delle proprietà della griglia dei dati che contiene questa colonna. (Ereditato da DataGridBoundColumn) |
| OnContentBindingChanged(BindingBase, BindingBase) |
Notifica all'oggetto DataGrid quando la ContentBinding proprietà viene modificata. |
| 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 il valore effettivo di qualsiasi proprietà di dipendenza in questo DependencyObject oggetto è stato aggiornato. La proprietà di dipendenza specifica modificata viene segnalata nei dati dell'evento. (Ereditato da DependencyObject) |
| PrepareCellForEdit(FrameworkElement, RoutedEventArgs) |
Chiamato quando una cella nella colonna entra in 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 nella colonna in risposta a una modifica del valore della proprietà della colonna. |
| SetCurrentValue(DependencyProperty, Object) |
Imposta il valore di una proprietà di dipendenza senza modificarne l'origine del valore. (Ereditato da DependencyObject) |
| SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza, specificato dall'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 per la 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 questo DispatcherObjectoggetto . (Ereditato da DispatcherObject) |
Eventi
| Nome | Descrizione |
|---|---|
| CopyingCellClipboardContent |
Si verifica dopo la preparazione del contenuto degli Appunti delle celle. (Ereditato da DataGridColumn) |
| PastingCellClipboardContent |
Si verifica prima che il contenuto degli Appunti venga spostato nella cella. (Ereditato da DataGridColumn) |