DataGridHyperlinkColumn Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
- Dziedziczenie
Przykłady
W poniższym przykładzie pokazano obiekt DataGridHyperlinkColumn , który ustawia Uri właściwość za pomocą Binding właściwości i tekst hiperłącza z właściwością ContentBinding . Zdarzenie Hyperlink.Click jest obsługiwane automatycznie, ponieważ NavigationWindow jest elementem nadrzędnym obiektu 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
Uwagi
Służy DataGridHyperlinkColumn do wyświetlania danych zawierających element , Uritaki jak adres HTTP lub adres e-mail. Na poniższej ilustracji przedstawiono przykład obiektu DataGridHyperlinkColumn.
Uwaga
Hyperlink nawigacja może wystąpić tylko wtedy, gdy element nadrzędny bezpośredni lub pośredni elementu Hyperlink jest hostem nawigacji. Przykłady hostów nawigacji to NavigationWindow, Framelub dowolna przeglądarka, która może hostować XBAPs. Aby uzyskać więcej informacji, zobacz artykuł "Hosty nawigacji" w sekcji Omówienie nawigacji.
Aby uzyskać więcej informacji na temat obsługi XBAP, zobacz Często zadawane pytania dotyczące aplikacji hostowanych w przeglądarce (XBAP) WPF.
Aby wypełnić kolumnę, powiąż kolumnę z Uri danymi przy użyciu Binding właściwości . Aby wyświetlić tekst hiperlinku inny niż ciąg identyfikatora URI, powiąż wartość tekstową z właściwością ContentBinding . Właściwość Binding jest stosowana do Hyperlink elementu lub TextBox utworzonego w kolumnie . Element DataContext dla elementu w każdej komórce jest elementem danych dla wiersza, w których znajduje się komórka. W związku z tym, aby skonfigurować powiązanie, musisz ustawić Binding.Pathtylko element . Opcjonalnie możesz określić Binding.Converter , czy chcesz przekonwertować dane. Aby uzyskać więcej informacji na temat powiązania danych, zobacz Powiązanie danych (WPF).
Uwaga
DataGridHyperlinkColumn Tworzy Hyperlink element w trybie nieedytowania i TextBox element w trybie edycji.
Jeśli chcesz wyświetlić inne typy danych, DataGrid udostępnia następujące typy kolumn:
Typ kolumny | Wyświetlanie danych |
---|---|
DataGridCheckBoxColumn | Służy do wyświetlania danych logicznych. |
DataGridComboBoxColumn | Służy do wyświetlania danych wyliczenia. |
DataGridTextColumn | Służy do wyświetlania tekstu. |
Jeśli chcesz użyć innych kontrolek w programie DataGrid, możesz utworzyć własne typy kolumn przy użyciu polecenia DataGridTemplateColumn.
Konstruktory
DataGridHyperlinkColumn() |
Inicjuje nowe wystąpienie klasy DataGridHyperlinkColumn. |
Pola
TargetNameProperty |
TargetName Identyfikuje właściwość zależności. |
Właściwości
ActualWidth |
Pobiera bieżącą szerokość kolumny w jednostkach niezależnych od urządzenia (1/96 cala na jednostkę). (Odziedziczone po DataGridColumn) |
Binding |
Pobiera lub ustawia powiązanie, które kojarzy kolumnę z właściwością w źródle danych. (Odziedziczone po DataGridBoundColumn) |
CanUserReorder |
Pobiera lub ustawia wartość wskazującą, czy użytkownik może zmienić położenie wyświetlania kolumny, przeciągając nagłówek kolumny. (Odziedziczone po DataGridColumn) |
CanUserResize |
Pobiera lub ustawia wartość wskazującą, czy użytkownik może dostosować szerokość kolumny przy użyciu myszy. (Odziedziczone po DataGridColumn) |
CanUserSort |
Pobiera lub ustawia wartość wskazującą, czy użytkownik może sortować kolumnę, klikając nagłówek kolumny. (Odziedziczone po DataGridColumn) |
CellStyle |
Pobiera lub ustawia styl używany do renderowania komórek w kolumnie. (Odziedziczone po DataGridColumn) |
ClipboardContentBinding |
Pobiera lub ustawia obiekt powiązania do użycia podczas pobierania lub ustawiania zawartości komórki dla schowka. (Odziedziczone po DataGridBoundColumn) |
ContentBinding |
Pobiera lub ustawia powiązanie na tekst hiperłącza. |
DataGridOwner |
Pobiera kontrolkę zawierającą DataGrid tę kolumnę. (Odziedziczone po DataGridColumn) |
DefaultEditingElementStyle |
Wartość domyślna EditingElementStyle właściwości. |
DefaultElementStyle |
Wartość domyślna ElementStyle właściwości. |
DependencyObjectType |
Pobiera klasę DependencyObjectType , która opakowuje typ CLR tego wystąpienia. (Odziedziczone po DependencyObject) |
Dispatcher |
Pobiera element, z Dispatcher który DispatcherObject jest skojarzony. (Odziedziczone po DispatcherObject) |
DisplayIndex |
Pobiera lub ustawia pozycję wyświetlania kolumny względem innych kolumn w obiekcie DataGrid. (Odziedziczone po DataGridColumn) |
DragIndicatorStyle |
Pobiera lub ustawia obiekt stylu, który ma być stosowany do nagłówka kolumny podczas operacji przeciągania. (Odziedziczone po DataGridColumn) |
EditingElementStyle |
Pobiera lub ustawia styl używany podczas renderowania elementu wyświetlanego przez kolumnę dla komórki w trybie edycji. (Odziedziczone po DataGridBoundColumn) |
ElementStyle |
Pobiera lub ustawia styl używany podczas renderowania elementu wyświetlanego przez kolumnę dla komórki, która nie jest w trybie edycji. (Odziedziczone po DataGridBoundColumn) |
Header |
Pobiera lub ustawia zawartość nagłówka kolumny. (Odziedziczone po DataGridColumn) |
HeaderStringFormat |
Pobiera lub ustawia wzorzec formatu, który ma być stosowany do zawartości nagłówka kolumny. (Odziedziczone po DataGridColumn) |
HeaderStyle |
Pobiera lub ustawia styl używany podczas renderowania nagłówka kolumny. (Odziedziczone po DataGridColumn) |
HeaderTemplate |
Pobiera lub ustawia szablon, który definiuje wizualną reprezentację nagłówka kolumny. (Odziedziczone po DataGridColumn) |
HeaderTemplateSelector |
Pobiera lub ustawia obiekt, który wybiera szablon do użycia dla nagłówka kolumny. (Odziedziczone po DataGridColumn) |
IsAutoGenerated |
Pobiera wartość wskazującą, czy kolumna jest generowana automatycznie. (Odziedziczone po DataGridColumn) |
IsFrozen |
Pobiera wartość wskazującą, czy kolumna nie może przewijać się w poziomie. (Odziedziczone po DataGridColumn) |
IsReadOnly |
Pobiera lub ustawia wartość wskazującą, czy można edytować komórki w kolumnie. (Odziedziczone po DataGridColumn) |
IsSealed |
Pobiera wartość wskazującą, czy to wystąpienie jest obecnie zapieczętowane (tylko do odczytu). (Odziedziczone po DependencyObject) |
MaxWidth |
Pobiera lub ustawia ograniczenie maksymalnej szerokości kolumny. (Odziedziczone po DataGridColumn) |
MinWidth |
Pobiera lub ustawia ograniczenie minimalnej szerokości kolumny. (Odziedziczone po DataGridColumn) |
SortDirection |
Pobiera lub ustawia kierunek sortowania (rosnąco lub malejąco) kolumny. (Odziedziczone po DataGridColumn) |
SortMemberPath |
Pobiera lub ustawia nazwę właściwości lub rozdzielaną kropkami hierarchię nazw właściwości, która wskazuje element członkowski do sortowania. (Odziedziczone po DataGridColumn) |
TargetName |
Pobiera lub ustawia nazwę okna docelowego lub ramki dla hiperłącza. |
Visibility |
Pobiera lub ustawia widoczność kolumny. (Odziedziczone po DataGridColumn) |
Width |
Pobiera lub ustawia szerokość kolumny lub tryb automatycznego określania rozmiaru. (Odziedziczone po DataGridColumn) |
Metody
CancelCellEdit(FrameworkElement, Object) |
Powoduje, że komórka kolumny jest edytowana, aby przywrócić określoną wartość. |
CancelCellEdit(FrameworkElement, Object) |
Powoduje, że komórka jest edytowana, aby przywrócić oryginalną, nieedytowaną wartość. (Odziedziczone po DataGridColumn) |
CheckAccess() |
Określa, czy wątek wywołujący ma dostęp do tego DispatcherObjectelementu . (Odziedziczone po DispatcherObject) |
ClearValue(DependencyProperty) |
Czyści wartość lokalną właściwości. Właściwość do wyczyszczenia jest określana przez DependencyProperty identyfikator. (Odziedziczone po DependencyObject) |
ClearValue(DependencyPropertyKey) |
Czyści wartość lokalną właściwości tylko do odczytu. Właściwość do wyczyszczenia jest określana przez element DependencyPropertyKey. (Odziedziczone po DependencyObject) |
CoerceValue(DependencyProperty) |
Przekształca wartość określonej właściwości zależności. Jest to realizowane przez wywołanie dowolnej CoerceValueCallback funkcji określonej w metadanych właściwości dla właściwości zależności, ponieważ istnieje w wywołaniu DependencyObject. (Odziedziczone po DependencyObject) |
CommitCellEdit(FrameworkElement) |
Wykonuje dowolną wymaganą walidację przed zakończeniem trybu edycji. |
CommitCellEdit(FrameworkElement) |
Wykonuje dowolną wymaganą walidację przed zakończeniem trybu edycji komórek. (Odziedziczone po DataGridColumn) |
Equals(Object) |
Określa, czy podany DependencyObject element jest odpowiednikiem bieżącego DependencyObjectelementu . (Odziedziczone po DependencyObject) |
GenerateEditingElement(DataGridCell, Object) |
Pobiera edytowalny TextBox element, który jest powiązany z wartością właściwości kolumny ContentBinding . |
GenerateElement(DataGridCell, Object) |
Pobiera element tylko Hyperlink do odczytu, który jest powiązany z wartością właściwości kolumny ContentBinding . |
GetCellContent(DataGridRow) |
Content Pobiera wartość właściwości komórki na przecięciu tej kolumny i określonego wiersza. (Odziedziczone po DataGridColumn) |
GetCellContent(Object) |
Content Pobiera wartość właściwości komórki na przecięciu tej kolumny i wiersza reprezentującego określony element danych. (Odziedziczone po DataGridColumn) |
GetHashCode() |
Pobiera kod skrótu dla tego DependencyObjectpliku . (Odziedziczone po DependencyObject) |
GetLocalValueEnumerator() |
Tworzy wyspecjalizowany moduł wyliczający do określania, które właściwości zależności mają lokalnie ustawione wartości dla tego DependencyObjectelementu . (Odziedziczone po DependencyObject) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
GetValue(DependencyProperty) |
Zwraca bieżącą obowiązującą wartość właściwości zależności dla tego wystąpienia klasy DependencyObject. (Odziedziczone po DependencyObject) |
InvalidateProperty(DependencyProperty) |
Ponownie oblicza efektywną wartość dla określonej właściwości zależności. (Odziedziczone po DependencyObject) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
NotifyPropertyChanged(String) |
Powiadamia o tym DataGrid , że zawiera tę kolumnę, że właściwość kolumny została zmieniona. (Odziedziczone po DataGridColumn) |
OnBindingChanged(BindingBase, BindingBase) |
Powiadamia o DataGrid zmianie wartości Binding właściwości. (Odziedziczone po DataGridBoundColumn) |
OnCoerceIsReadOnly(Boolean) |
Określa wartość IsReadOnly właściwości na podstawie reguł właściwości z siatki danych zawierającej tę kolumnę. (Odziedziczone po DataGridBoundColumn) |
OnContentBindingChanged(BindingBase, BindingBase) |
Powiadamia o DataGrid zmianie ContentBinding właściwości. |
OnCopyingCellClipboardContent(Object) |
CopyingCellClipboardContent Zgłasza zdarzenie. (Odziedziczone po DataGridColumn) |
OnPastingCellClipboardContent(Object, Object) |
PastingCellClipboardContent Zgłasza zdarzenie. (Odziedziczone po DataGridColumn) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Wywoływane za każdym razem, gdy zostanie zaktualizowana efektywna wartość dowolnej właściwości DependencyObject zależności. Określona właściwość zależności, która została zmieniona, jest zgłaszana w danych zdarzenia. (Odziedziczone po DependencyObject) |
PrepareCellForEdit(FrameworkElement, RoutedEventArgs) |
Wywoływana, gdy komórka w kolumnie przechodzi w tryb edycji. |
ReadLocalValue(DependencyProperty) |
Zwraca wartość lokalną właściwości zależności, jeśli istnieje. (Odziedziczone po DependencyObject) |
RefreshCellContent(FrameworkElement, String) |
Odświeża zawartość komórki w kolumnie w odpowiedzi na zmianę wartości właściwości kolumny. |
SetCurrentValue(DependencyProperty, Object) |
Ustawia wartość właściwości zależności bez zmieniania jej źródła wartości. (Odziedziczone po DependencyObject) |
SetValue(DependencyProperty, Object) |
Ustawia wartość lokalną właściwości zależności określonej przez jej identyfikator właściwości zależności. (Odziedziczone po DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Ustawia wartość lokalną właściwości zależności tylko do odczytu określonej przez DependencyPropertyKey identyfikator właściwości zależności. (Odziedziczone po DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość dla podanej właściwości zależności. (Odziedziczone po DependencyObject) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
VerifyAccess() |
Wymusza, że wątek wywołujący ma dostęp do tego DispatcherObjectelementu . (Odziedziczone po DispatcherObject) |
Zdarzenia
CopyingCellClipboardContent |
Występuje po przygotowaniu zawartości schowka komórki. (Odziedziczone po DataGridColumn) |
PastingCellClipboardContent |
Występuje przed przeniesieniem zawartości schowka do komórki. (Odziedziczone po DataGridColumn) |