Binding Klasa

Definicja

Zapewnia wysoki poziom dostępu do definicji powiązania, który łączy właściwości obiektów docelowych powiązań (zazwyczaj elementy WPF) i wszystkie źródła danych (na przykład bazy danych, pliku XML lub dowolnego obiektu, który zawiera dane).Provides high-level access to the definition of a binding, which connects the properties of binding target objects (typically, WPF elements), and any data source (for example, a database, an XML file, or any object that contains data).

public ref class Binding : System::Windows::Data::BindingBase
public class Binding : System.Windows.Data.BindingBase
type Binding = class
    inherit BindingBase
Public Class Binding
Inherits BindingBase
Dziedziczenie

Uwagi

Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) powiązania danych zapewnia prosty i spójny sposób, w jaki aplikacje mogą być obecne i współpracujące z danymi.data binding provides a simple and consistent way for applications to present and interact with data. Powiązanie danych umożliwia synchronizowanie wartości właściwości dwóch różnych obiektów.Data binding enables you to synchronize the values of the properties of two different objects.

Aby ustanowić powiązanie, należy użyć klasy Binding lub jednej z innych klas, które dziedziczą BindingBase.To establish a binding, use the Binding class or one of the other classes that inherit BindingBase. Niezależnie od tego, który obiekt jest powiązany, i istoty źródła danych, każde powiązanie następuje po modelu zilustrowanym na poniższej ilustracji.Regardless of what object you are binding and the nature of your data source, each binding follows the model illustrated by the following figure.

Podstawowy diagram powiązań danychBasic data binding diagram

Na rysunku przedstawiono następujące podstawowe koncepcje dotyczące powiązań danych WPFWPF.The figure demonstrates the following fundamental WPFWPF data binding concepts.

  • Każde powiązanie zwykle zawiera te cztery składniki: obiekt docelowy powiązania, właściwość docelowa, Źródło powiązania i Path do wartości w źródle powiązania do użycia.Each binding typically has these four components: a binding target object, a target property, a binding source, and a Path to the value in the binding source to use. Na przykład jeśli chcesz powiązać zawartość TextBox z właściwością nazwa obiektu Employee, obiektem docelowym jest TextBox, właściwość target jest właściwością Text, wartość do użycia to nazwa, a obiekt źródłowy jest obiektem Employee.For example, if you want to bind the content of a TextBox to the Name property of an Employee object, your target object is the TextBox, the target property is the Text property, the value to use is Name, and the source object is the Employee object.

  • Właściwość Target musi być właściwością zależności.The target property must be a dependency property. Oznacza to również, że nie można powiązać pola.This also means that you cannot bind a field. Większość właściwości obiektów UIElement to właściwości zależności i większość właściwości zależności, z wyjątkiem tych, które domyślnie obsługują powiązanie danych.Most properties of UIElement objects are dependency properties and most dependency properties, except read-only ones, support data binding by default. (Tylko typy DependencyObject mogą definiować właściwości zależności i wszystkie obiekty UIElement pochodne od DependencyObject).(Only DependencyObject types can define dependency properties and all UIElement objects derive from DependencyObject.)

  • Chociaż nie jest określony na rysunku, należy zauważyć, że obiekt źródłowy powiązania nie jest ograniczony do niestandardowego obiektu CLRCLR.Although not specified in the figure, it should be noted that the binding source object is not restricted to being a custom CLRCLR object. WPFWPF powiązania danych obsługuje dane w postaci obiektów CLRCLR i XMLXML.data binding supports data in the form of CLRCLR objects and XMLXML. Aby zapewnić kilka przykładów, źródłem powiązań może być UIElement, każdy obiekt listy, obiekt CLRCLR, który jest skojarzony z danymi ADO.NETADO.NET lub usługami sieci Web, lub element XmlNode zawierający dane XMLXML.To provide some examples, your binding source may be a UIElement, any list object, a CLRCLR object that is associated with ADO.NETADO.NET data or Web Services, or an XmlNode that contains your XMLXML data.

Użyj właściwości Mode, aby określić kierunek przepływu danych.Use the Mode property to specify the direction of the data flow. Aby wykrywać zmiany źródła w ramach powiązań jednokierunkowych lub dwukierunkowych, Źródło musi zaimplementować odpowiedni mechanizm powiadamiania o zmianach właściwości, taki jak INotifyPropertyChanged.To detect source changes in one-way or two-way bindings, the source must implement a suitable property change notification mechanism such as INotifyPropertyChanged. Aby zapoznać się z przykładem, zobacz How to: Implementuj powiadomienie o zmianie właściwości.For an example, see How to: Implement Property Change Notification. Właściwość UpdateSourceTrigger określa chronometraż aktualizacji źródła.The UpdateSourceTrigger property specifies the timing of source updates. Aby uzyskać więcej informacji, zobacz "podstawowe pojęcia dotyczące powiązań danych" w temacie powiązanie danych — omówienie.For more information, see "Basic Data Binding Concepts" in Data Binding Overview.

Użycie atrybutu języka XAMLXAML Attribute Usage

<object property="{Binding  declaration}"/>  

Wartości XAMLXAML Values

oświadczeńdeclaration
Zero lub więcej klauzule przypisania atrybutu oddzielone przecinkami (,).Zero or more attribute-assignment clauses separated by commas (,). Aby uzyskać więcej informacji, zobacz powiązanie znaczników rozszerzenia lub deklaracji powiązań.For more information, see Binding Markup Extension or Binding Declarations Overview.

Konstruktory

Binding()

Inicjuje nowe wystąpienie klasy Binding klasy.Initializes a new instance of the Binding class.

Binding(String)

Inicjuje nowe wystąpienie klasy Binding ze ścieżką początkową.Initializes a new instance of the Binding class with an initial path.

Pola

DoNothing

Używane jako wartość zwracana do nakazuje aparatowi powiązania, aby nie wykonywał żadnej akcji.Used as a returned value to instruct the binding engine not to perform any action.

IndexerName

Używane jako PropertyName PropertyChangedEventArgs, aby wskazać, że Właściwość indeksatora została zmieniona.Used as the PropertyName of PropertyChangedEventArgs to indicate that an indexer property has changed.

SourceUpdatedEvent

Identyfikuje dołączone zdarzenie SourceUpdated.Identifies the SourceUpdated attached event.

TargetUpdatedEvent

Identyfikuje dołączone zdarzenie TargetUpdated.Identifies the TargetUpdated attached event.

XmlNamespaceManagerProperty

Identyfikuje przyłączoną Właściwość XmlNamespaceManager.Identifies the XmlNamespaceManager attached property.

Właściwości

AsyncState

Pobiera lub ustawia dane nieprzezroczyste przesyłane do asynchronicznego dyspozytora danych.Gets or sets opaque data passed to the asynchronous data dispatcher.

BindingGroupName

Pobiera lub ustawia nazwę BindingGroup, do którego należy to powiązanie.Gets or sets the name of the BindingGroup to which this binding belongs.

(Odziedziczone po BindingBase)
BindsDirectlyToSource

Pobiera lub ustawia wartość wskazującą, czy Path względem elementu danych czy DataSourceProvider obiektu.Gets or sets a value that indicates whether to evaluate the Path relative to the data item or the DataSourceProvider object.

Converter

Pobiera lub ustawia konwerter do użycia.Gets or sets the converter to use.

ConverterCulture

Pobiera lub ustawia kulturę, w której ma zostać obliczony konwerter.Gets or sets the culture in which to evaluate the converter.

ConverterParameter

Pobiera lub ustawia parametr, który zostanie przekazany do Converter.Gets or sets the parameter to pass to the Converter.

Delay

Pobiera lub ustawia czas oczekiwania (w milisekundach) przed zaktualizowaniem źródła powiązania po zmianie wartości docelowej.Gets or sets the amount of time, in milliseconds, to wait before updating the binding source after the value on the target changes.

(Odziedziczone po BindingBase)
ElementName

Pobiera lub ustawia nazwę elementu, który ma być używany jako obiekt źródłowy powiązania.Gets or sets the name of the element to use as the binding source object.

FallbackValue

Pobiera lub ustawia wartość, która ma być używana, gdy powiązanie nie może zwrócić wartości.Gets or sets the value to use when the binding is unable to return a value.

(Odziedziczone po BindingBase)
IsAsync

Pobiera lub ustawia wartość wskazującą, czy Binding powinien pobierać i ustawiać wartości asynchronicznie.Gets or sets a value that indicates whether the Binding should get and set values asynchronously.

Mode

Pobiera lub ustawia wartość wskazującą kierunek przepływu danych w powiązaniu.Gets or sets a value that indicates the direction of the data flow in the binding.

NotifyOnSourceUpdated

Pobiera lub ustawia wartość wskazującą, czy zdarzenie SourceUpdated ma zostać zgłoszone po przeniesieniu wartości z celu powiązania do źródła powiązania.Gets or sets a value that indicates whether to raise the SourceUpdated event when a value is transferred from the binding target to the binding source.

NotifyOnTargetUpdated

Pobiera lub ustawia wartość wskazującą, czy zdarzenie TargetUpdated ma zostać zgłoszone po przeniesieniu wartości ze źródła powiązania do celu powiązania.Gets or sets a value that indicates whether to raise the TargetUpdated event when a value is transferred from the binding source to the binding target.

NotifyOnValidationError

Pobiera lub ustawia wartość wskazującą, czy podnieść Error dołączonego zdarzenia w obiekcie powiązanym.Gets or sets a value that indicates whether to raise the Error attached event on the bound object.

Path

Pobiera lub ustawia ścieżkę do właściwości źródła powiązania.Gets or sets the path to the binding source property.

RelativeSource

Pobiera lub ustawia źródło powiązania, określając jego lokalizację względem pozycji docelowej powiązania.Gets or sets the binding source by specifying its location relative to the position of the binding target.

Source

Pobiera lub ustawia obiekt, który będzie używany jako źródło powiązania.Gets or sets the object to use as the binding source.

StringFormat

Pobiera lub ustawia ciąg określający sposób formatowania powiązania w przypadku wyświetlenia wartości powiązanej jako ciągu.Gets or sets a string that specifies how to format the binding if it displays the bound value as a string.

(Odziedziczone po BindingBase)
TargetNullValue

Pobiera lub ustawia wartość używaną w elemencie docelowym, gdy wartość źródła jest null.Gets or sets the value that is used in the target when the value of the source is null.

(Odziedziczone po BindingBase)
UpdateSourceExceptionFilter

Pobiera lub ustawia procedurę obsługi, której można użyć, aby zapewnić niestandardową logikę obsługi wyjątków, które napotyka aparat powiązań podczas aktualizacji wartości źródłowej powiązania.Gets or sets a handler you can use to provide custom logic for handling exceptions that the binding engine encounters during the update of the binding source value. Ma to zastosowanie tylko wtedy, gdy masz skojarzone ExceptionValidationRule z powiązaniem.This is only applicable if you have associated an ExceptionValidationRule with your binding.

UpdateSourceTrigger

Pobiera lub ustawia wartość określającą chronometraż aktualizacji źródła powiązań.Gets or sets a value that determines the timing of binding source updates.

ValidatesOnDataErrors

Pobiera lub ustawia wartość wskazującą, czy dołączać DataErrorValidationRule.Gets or sets a value that indicates whether to include the DataErrorValidationRule.

ValidatesOnExceptions

Pobiera lub ustawia wartość wskazującą, czy dołączać ExceptionValidationRule.Gets or sets a value that indicates whether to include the ExceptionValidationRule.

ValidatesOnNotifyDataErrors

Pobiera lub ustawia wartość wskazującą, czy dołączać NotifyDataErrorValidationRule.Gets or sets a value that indicates whether to include the NotifyDataErrorValidationRule.

ValidationRules

Pobiera kolekcję reguł, które sprawdzają poprawność danych wejściowych użytkownika.Gets a collection of rules that check the validity of the user input.

XPath

Pobiera lub ustawia kwerendę XPath, która zwraca wartość w źródle powiązania XMLXML do użycia.Gets or sets an XPath query that returns the value on the XMLXML binding source to use.

Właściwości dołączone

XmlNamespaceManager

Pobiera lub ustawia XmlNamespaceManager używany do wykonywania zapytań XPath z uwzględnieniem przestrzeni nazw w powiązaniach XML.Gets or sets the XmlNamespaceManager used to perform namespace-aware XPath queries in XML bindings.

Metody

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Dodaje procedurę obsługi dla dołączonego zdarzenia SourceUpdated.Adds a handler for the SourceUpdated attached event.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Dodaje procedurę obsługi dla dołączonego zdarzenia TargetUpdated.Adds a handler for the TargetUpdated attached event.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżącego wystąpienia.Gets the Type of the current instance.

(Odziedziczone po Object)
GetXmlNamespaceManager(DependencyObject)

Zwraca obiekt Menedżera przestrzeni nazw XMLXML używany przez powiązanie dołączone do określonego obiektu.Returns an XMLXML namespace manager object used by the binding attached to the specified object.

MemberwiseClone()

Tworzy skróconą kopię bieżącego Object.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
ProvideValue(IServiceProvider)

Zwraca obiekt, który powinien być ustawiony we właściwości, w której są stosowane to powiązanie i rozszerzenie.Returns an object that should be set on the property where this binding and extension are applied.

(Odziedziczone po BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Usuwa procedurę obsługi dla dołączonego zdarzenia SourceUpdated.Removes a handler for the SourceUpdated attached event.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Usuwa procedurę obsługi dla dołączonego zdarzenia TargetUpdated.Removes a handler for the TargetUpdated attached event.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

Ustawia obiekt Menedżera przestrzeni nazw używany przez powiązanie dołączone do podanego elementu.Sets a namespace manager object used by the binding attached to the provided element.

ShouldSerializeFallbackValue()

Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość efektywną właściwości FallbackValue w wystąpieniach tej klasy.Returns a value that indicates whether serialization processes should serialize the effective value of the FallbackValue property on instances of this class.

(Odziedziczone po BindingBase)
ShouldSerializePath()

Wskazuje, czy właściwość Path powinna być utrwalona.Indicates whether the Path property should be persisted.

ShouldSerializeSource()

Wskazuje, czy właściwość Source powinna być utrwalona.Indicates whether the Source property should be persisted.

ShouldSerializeTargetNullValue()

Zwraca wartość wskazującą, czy właściwość TargetNullValue powinna być serializowana.Returns a value that indicates whether the TargetNullValue property should be serialized.

(Odziedziczone po BindingBase)
ShouldSerializeValidationRules()

Wskazuje, czy właściwość ValidationRules powinna być utrwalona.Indicates whether the ValidationRules property should be persisted.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Zdarzenia dołączone

SourceUpdated

Występuje, gdy wartość jest transferowana z celu powiązania do źródła powiązania, ale tylko dla powiązań z wartością NotifyOnSourceUpdated ustawioną na true.Occurs when a value is transferred from the binding target to the binding source, but only for bindings with the NotifyOnSourceUpdated value set to true.

TargetUpdated

Występuje, gdy wartość zostanie przetransferowana z źródła powiązania do elementu docelowego powiązania, ale tylko dla powiązań z wartością NotifyOnTargetUpdated ustawioną na true.Occurs when a value is transferred from the binding source to the binding target, but only for bindings with the NotifyOnTargetUpdated value set to true.

Dotyczy

Zobacz też