DataGridHyperlinkColumn Klasa

Definicja

Reprezentuje kolumnę DataGrid , która hostuje Uri elementy w komórkach.

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 element, który DataGridHyperlinkColumn ustawia Uri właściwość z właściwością Binding i tekst hiperlinku z właściwością ContentBinding . Zdarzenie Hyperlink.Click jest obsługiwane automatycznie, ponieważ NavigationWindow jest elementem nadrzędnym elementu 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 Uriadres HTTP lub adres e-mail. Na poniższej ilustracji przedstawiono przykład elementu DataGridHyperlinkColumn.

DataGridHyperlinkColumn z adresami e-mail

Uwaga

Hyperlink nawigacja może wystąpić tylko wtedy, gdy element nadrzędny bezpośredni lub pośredni elementu nadrzędnego elementu jest Hyperlink hostem nawigacji. Przykłady hostów nawigacji to NavigationWindow, Framelub dowolna przeglądarka, która może hostować XBAPs, takie jak Microsoft Internet Explorer 6 lub nowszy i Firefox 2.0 lub nowszy. Aby uzyskać więcej informacji, zobacz temat "Hosty nawigacji" w obszarze Przegląd nawigacji.

Aby wypełnić kolumnę, powiąż kolumnę z Uri danymi przy użyciu Binding właściwości . Aby wyświetlić tekst hiperłącza inny niż ciąg identyfikatora URI, powiąż wartość tekstową z właściwością ContentBinding . Właściwość Binding jest stosowana do elementu or TextBox utworzonego Hyperlink 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 Użyj polecenia , aby wyświetlić tekst.

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

Identyfikuje TargetName 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ą tę kolumnę DataGrid .

(Odziedziczone po DataGridColumn)
DefaultEditingElementStyle

Wartość domyślna EditingElementStyle właściwości.

DefaultElementStyle

Wartość domyślna ElementStyle właściwości.

DependencyObjectType

DependencyObjectType Pobiera opakowujący typ clR tego wystąpienia.

(Odziedziczone po DependencyObject)
Dispatcher

Dispatcher Pobiera tę DispatcherObject wartość skojarzona z.

(Odziedziczone po DispatcherObject)
DisplayIndex

Pobiera lub ustawia położenie wyświetlania kolumny względem innych kolumn w elemecie 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 komórki w kolumnie można edytować.

(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 hierarchię rozdzielaną kropką nazw właściwości, która wskazuje element członkowski do sortowania według.

(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 DependencyPropertyKeyelement .

(Odziedziczone po DependencyObject)
CoerceValue(DependencyProperty)

Coerce 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 zamknięciem trybu edycji.

CommitCellEdit(FrameworkElement)

Wykonuje dowolną wymaganą walidację przed zamknięciem 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 powiązany z wartością właściwości kolumny ContentBinding .

GenerateElement(DataGridCell, Object)

Pobiera element tylko do Hyperlink odczytu powiązany z wartością właściwości kolumny ContentBinding .

GetCellContent(DataGridRow)

Content Pobiera wartość właściwości komórki na skrzyżowaniu tej kolumny i określonego wiersza.

(Odziedziczone po DataGridColumn)
GetCellContent(Object)

Content Pobiera wartość właściwości dla komórki na skrzyżowaniu tej kolumny i wiersza, który reprezentuje określony element danych.

(Odziedziczone po DataGridColumn)
GetHashCode()

Pobiera kod skrótu dla tego pliku DependencyObject.

(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 w tym DependencyObjectelemecie .

(Odziedziczone po DependencyObject)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
GetValue(DependencyProperty)

Zwraca bieżącą obowiązującą wartość właściwości zależności dla tego wystąpienia obiektu 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 DataGrid tym, ż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 DataGridContentBinding zmianie 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 obowiązująca wartość dowolnej właściwości zależności została DependencyObject zaktualizowana. Określona właściwość zależności, która uległa zmianie, jest zgłaszana w danych zdarzenia.

(Odziedziczone po DependencyObject)
PrepareCellForEdit(FrameworkElement, RoutedEventArgs)

Wywoływane, gdy komórka w kolumnie wchodzi 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 zmiany źródła wartości.

(Odziedziczone po DependencyObject)
SetValue(DependencyProperty, Object)

Ustawia wartość lokalną właściwości zależności określonej przez jego 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ślona 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ść 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)

Dotyczy

Zobacz też