Binding Classe

Definição

Fornece acesso de alto nível para a definição de uma associação, que conecta as propriedades de objetos de destino da associação (normalmente, elementos WPF) e qualquer fonte de dados (por exemplo, um banco de dados, um arquivo XML ou qualquer objeto que contém dados).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
Herança

Comentários

A vinculação de dados do Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) fornece aos aplicativos uma maneira simples e consistente para apresentar e interagir com os dados.Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) data binding provides a simple and consistent way for applications to present and interact with data. A vinculação de dados permite que você sincronize os valores das propriedades de dois objetos diferentes.Data binding enables you to synchronize the values of the properties of two different objects.

Para estabelecer uma associação, use a classe Binding ou uma das outras classes que herdam BindingBase.To establish a binding, use the Binding class or one of the other classes that inherit BindingBase. Independentemente do objeto que você está associando e da natureza de sua fonte de dados, cada associação segue o modelo ilustrado pela figura a seguir.Regardless of what object you are binding and the nature of your data source, each binding follows the model illustrated by the following figure.

Diagrama básico de vinculação de dadosBasic data binding diagram

A figura demonstra os seguintes conceitos fundamentais de associação de dados de WPFWPF.The figure demonstrates the following fundamental WPFWPF data binding concepts.

  • Cada associação normalmente tem estes quatro componentes: um objeto de destino de associação, uma propriedade de destino, uma fonte de associação e um Path para o valor na origem da associação a ser usada.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. Por exemplo, se você quiser associar o conteúdo de um TextBox à propriedade Name de um objeto Employee, o objeto de destino será o TextBox, a Propriedade Target será a propriedade Text, o valor a ser usado será Name e o objeto de origem será o objeto 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.

  • A propriedade de destino deve ser uma propriedade de dependência.The target property must be a dependency property. Isso também significa que você não pode associar um campo.This also means that you cannot bind a field. A maioria das propriedades de objetos UIElement são propriedades de dependência e a maioria das propriedades de dependência, exceto somente leitura, dão suporte à vinculação de dados por padrão.Most properties of UIElement objects are dependency properties and most dependency properties, except read-only ones, support data binding by default. (Somente DependencyObject tipos podem definir propriedades de dependência e todos os objetos de UIElement derivam de DependencyObject.)(Only DependencyObject types can define dependency properties and all UIElement objects derive from DependencyObject.)

  • Embora não especificado na figura, deve-se observar que o objeto de origem da associação não é restrito a ser um objeto CLRCLR personalizado.Although not specified in the figure, it should be noted that the binding source object is not restricted to being a custom CLRCLR object. A vinculação de dados do WPFWPF dá suporte a dados na forma de objetos CLRCLR e XMLXML.WPFWPF data binding supports data in the form of CLRCLR objects and XMLXML. Para fornecer alguns exemplos, sua fonte de associação pode ser uma UIElement, qualquer objeto de lista, um objeto de CLRCLR associado a dados de ADO.NETADO.NET ou serviços Web, ou um XmlNode que contém seus dados de 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.

Use a propriedade Mode para especificar a direção do fluxo de dados.Use the Mode property to specify the direction of the data flow. Para detectar alterações de origem em associações unidirecionais ou bidirecionais, a origem deve implementar um mecanismo de notificação de alteração de propriedade adequado, como 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. Para obter um exemplo, consulte como implementar a notificação de alteração de propriedade.For an example, see How to: Implement Property Change Notification. A propriedade UpdateSourceTrigger especifica o tempo das atualizações de origem.The UpdateSourceTrigger property specifies the timing of source updates. Para obter mais informações, consulte "conceitos básicos de ligação de dados" em visão geral de associação de dados.For more information, see "Basic Data Binding Concepts" in Data Binding Overview.

Uso do Atributo XAMLXAML Attribute Usage

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

Valores XAMLXAML Values

declarationdeclaration
Nenhuma ou mais cláusulas de atribuição de atributo separadas por vírgulas (,).Zero or more attribute-assignment clauses separated by commas (,). Para obter mais informações, consulte visão geralda extensão de marcação de associação ou declarações de associação.For more information, see Binding Markup Extension or Binding Declarations Overview.

Construtores

Binding()

Inicializa uma nova instância da classe Binding.Initializes a new instance of the Binding class.

Binding(String)

Inicializa uma nova instância da classe Binding com um caminho inicial.Initializes a new instance of the Binding class with an initial path.

Campos

DoNothing

Usado como um valor retornado para instruir o mecanismo de associação para não executar nenhuma ação.Used as a returned value to instruct the binding engine not to perform any action.

IndexerName

Usado como o PropertyName de PropertyChangedEventArgs para indicar que uma propriedade do indexador foi alterada.Used as the PropertyName of PropertyChangedEventArgs to indicate that an indexer property has changed.

SourceUpdatedEvent

Identifica o evento SourceUpdated anexado.Identifies the SourceUpdated attached event.

TargetUpdatedEvent

Identifica o evento TargetUpdated anexado.Identifies the TargetUpdated attached event.

XmlNamespaceManagerProperty

Identifica a propriedade XmlNamespaceManager anexada.Identifies the XmlNamespaceManager attached property.

Propriedades

AsyncState

Obtém ou define dados opacos passados para o dispatcher de dados assíncronos.Gets or sets opaque data passed to the asynchronous data dispatcher.

BindingGroupName

Obtém ou define o nome do BindingGroup ao qual esta associação pertence.Gets or sets the name of the BindingGroup to which this binding belongs.

(Herdado de BindingBase)
BindsDirectlyToSource

Obtém ou define um valor que indica se é necessário avaliar o Path relativo ao item de dados ou o objeto DataSourceProvider.Gets or sets a value that indicates whether to evaluate the Path relative to the data item or the DataSourceProvider object.

Converter

Obtém ou define o conversor a ser usado.Gets or sets the converter to use.

ConverterCulture

Obtém ou define a cultura na qual o conversor será avaliado.Gets or sets the culture in which to evaluate the converter.

ConverterParameter

Obtém ou define o parâmetro a ser passado para o Converter.Gets or sets the parameter to pass to the Converter.

Delay

Obtém ou define a quantidade de tempo, em milissegundos, de espera antes de atualizar a origem da associação após o valor das alterações de destino.Gets or sets the amount of time, in milliseconds, to wait before updating the binding source after the value on the target changes.

(Herdado de BindingBase)
ElementName

Obtém ou define o nome do elemento a ser usado como o objeto de origem de associação.Gets or sets the name of the element to use as the binding source object.

FallbackValue

Obtém ou define o valor a ser usado quando a associação não é capaz de retornar um valor.Gets or sets the value to use when the binding is unable to return a value.

(Herdado de BindingBase)
IsAsync

Obtém ou define um valor que indica se o Binding deve obter e definir valores de forma assíncrona.Gets or sets a value that indicates whether the Binding should get and set values asynchronously.

Mode

Obtém ou define um valor que indica a direção do fluxo de dados na associação.Gets or sets a value that indicates the direction of the data flow in the binding.

NotifyOnSourceUpdated

Obtém ou define um valor que indica se o evento SourceUpdated deve ser gerado quando um valor é transferido do destino da associação para a origem da associação.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

Obtém ou define um valor que indica se o evento TargetUpdated deve ser gerado quando um valor é transferido da origem de associação para o destino de associação.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

Obtém ou define um valor que indica se o evento anexado Error no objeto associado deve ser gerado.Gets or sets a value that indicates whether to raise the Error attached event on the bound object.

Path

Obtém ou define o caminho para a propriedade de origem da associação.Gets or sets the path to the binding source property.

RelativeSource

Obtém ou define a origem da associação, especificando seu local com relação à posição do destino da associação.Gets or sets the binding source by specifying its location relative to the position of the binding target.

Source

Obtém ou define o objeto a ser usado como a origem da associação.Gets or sets the object to use as the binding source.

StringFormat

Obtém ou define uma cadeia de caracteres que especifica como formatar a associação se ela exibir o valor associado como uma cadeia de caracteres.Gets or sets a string that specifies how to format the binding if it displays the bound value as a string.

(Herdado de BindingBase)
TargetNullValue

Obtém ou define o valor que é usado no destino quando o valor da fonte é null.Gets or sets the value that is used in the target when the value of the source is null.

(Herdado de BindingBase)
UpdateSourceExceptionFilter

Obtém ou define um manipulador que você pode usar para fornecer lógica personalizada para lidar com exceções que o mecanismo de associação encontra durante a atualização do valor de origem da associação.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. Isso será aplicável somente se você tiver associado um ExceptionValidationRule à associação.This is only applicable if you have associated an ExceptionValidationRule with your binding.

UpdateSourceTrigger

Obtém ou define um valor que determina o intervalo das atualizações da origem de associação.Gets or sets a value that determines the timing of binding source updates.

ValidatesOnDataErrors

Obtém ou define um valor que indica se a DataErrorValidationRule deve ser incluída.Gets or sets a value that indicates whether to include the DataErrorValidationRule.

ValidatesOnExceptions

Obtém ou define um valor que indica se a ExceptionValidationRule deve ser incluída.Gets or sets a value that indicates whether to include the ExceptionValidationRule.

ValidatesOnNotifyDataErrors

Obtém ou define um valor que indica se a NotifyDataErrorValidationRule deve ser incluída.Gets or sets a value that indicates whether to include the NotifyDataErrorValidationRule.

ValidationRules

Obtém uma coleção de regras que verificam a validade da entrada do usuário.Gets a collection of rules that check the validity of the user input.

XPath

Obtém ou define uma consulta XPath que retorna o valor na origem da associação XMLXML a ser usado.Gets or sets an XPath query that returns the value on the XMLXML binding source to use.

Propriedades Anexadas

XmlNamespaceManager

Obtém ou define o XmlNamespaceManager usado para executar consultas XPath com reconhecimento de namespace nas associações de XML.Gets or sets the XmlNamespaceManager used to perform namespace-aware XPath queries in XML bindings.

Métodos

AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Adiciona um manipulador ao evento anexado SourceUpdated.Adds a handler for the SourceUpdated attached event.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Adiciona um manipulador ao evento anexado TargetUpdated.Adds a handler for the TargetUpdated attached event.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Herdado de Object)
GetXmlNamespaceManager(DependencyObject)

Retorna um objeto do gerenciador de namespace XMLXML usado pela associação anexada ao objeto especificado.Returns an XMLXML namespace manager object used by the binding attached to the specified object.

MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Herdado de Object)
ProvideValue(IServiceProvider)

Retorna um objeto que deve ser definido na propriedade em que essa associação e extensão são aplicadas.Returns an object that should be set on the property where this binding and extension are applied.

(Herdado de BindingBase)
RemoveSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Remove um manipulador para o evento anexado SourceUpdated.Removes a handler for the SourceUpdated attached event.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Remove um manipulador para o evento anexado TargetUpdated.Removes a handler for the TargetUpdated attached event.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

Define um objeto do gerenciador de namespace usado pela associação anexada ao objeto fornecido.Sets a namespace manager object used by the binding attached to the provided element.

ShouldSerializeFallbackValue()

Retorna um valor que indica se o processo de serialização deve serializar o valor efetivo da propriedade FallbackValue em instâncias desta classe.Returns a value that indicates whether serialization processes should serialize the effective value of the FallbackValue property on instances of this class.

(Herdado de BindingBase)
ShouldSerializePath()

Indica se a propriedade Path deve ser persistente.Indicates whether the Path property should be persisted.

ShouldSerializeSource()

Indica se a propriedade Source deve ser persistente.Indicates whether the Source property should be persisted.

ShouldSerializeTargetNullValue()

Retorna um valor que indica se a propriedade TargetNullValue deve ser serializada.Returns a value that indicates whether the TargetNullValue property should be serialized.

(Herdado de BindingBase)
ShouldSerializeValidationRules()

Indica se a propriedade ValidationRules deve ser persistente.Indicates whether the ValidationRules property should be persisted.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Herdado de Object)

Eventos Anexados

SourceUpdated

Ocorre quando um valor é transferido do destino da associação para a origem da associação, mas apenas para associações com o valor NotifyOnSourceUpdated definido como 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

Ocorre quando um valor é transferido da origem da associação para o destino da associação, mas apenas para associações com o valor NotifyOnTargetUpdated definido como 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.

Aplica-se a

Veja também