Compartilhar via


Binding Classe

Definição

Fornece acesso de alto nível à definição de uma associação, que conecta as propriedades de objetos de destino de associação (normalmente, elementos WPF) e qualquer fonte de dados (por exemplo, um banco de dados, um arquivo XML ou qualquer objeto que contenha dados).

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 associação de dados do WPF (Windows Presentation Foundation) fornece uma maneira simples e consistente para os aplicativos apresentarem e interagirem com os dados. A associação de dados permite sincronizar os valores das propriedades de dois objetos diferentes.

Para estabelecer uma associação, use a Binding classe ou uma das outras classes que herdam BindingBase. Independentemente do objeto que você está associando e da natureza da fonte de dados, cada associação segue o modelo ilustrado pela figura a seguir.

Diagrama de associação de dados básico

A figura demonstra os seguintes conceitos fundamentais de associação de dados do WPF.

  • Cada associação normalmente tem esses quatro componentes: um objeto de destino de associação, uma propriedade de destino, uma origem de associação e um Path para o valor na fonte de associação a ser usada. Por exemplo, se você quiser associar o conteúdo de um TextBox à propriedade Name de um objeto Employee, seu objeto de destino será a TextBoxpropriedade Text de destino, o valor a ser usado é Nome e o objeto de origem é o objeto Employee.

  • A propriedade de destino deve ser uma propriedade de dependência. Isso também significa que você não pode associar um campo. A maioria das propriedades dos objetos são propriedades de UIElement dependência e a maioria das propriedades de dependência, exceto as somente leitura, dão suporte à associação de dados por padrão. (Somente DependencyObject os tipos podem definir propriedades de dependência e todos os UIElement objetos derivam de DependencyObject.)

  • Embora não seja especificado na figura, deve-se observar que o objeto de origem de associação não está restrito a ser um objeto CLR personalizado. A associação de dados do WPF dá suporte a dados na forma de objetos CLR e XML. Para fornecer alguns exemplos, sua fonte de associação pode ser um UIElementobjeto de lista, um objeto CLR associado a dados ADO.NET ou Serviços Web ou um XmlNode que contém seus dados XML.

Use a Mode propriedade para especificar a direção do fluxo de dados. 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. Para obter um exemplo, consulte Como implementar a notificação de alteração de propriedade. A UpdateSourceTrigger propriedade especifica o tempo das atualizações de origem. Para obter mais informações, consulte "Conceitos básicos de associação de dados" na visão geral da associação de dados.

Uso do atributo XAML

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

Valores XAML

Declaração Zero ou mais cláusulas de atribuição de atributo separadas por vírgulas (,). Para obter mais informações, consulte a visão geral da extensão de marcação de associação ou declarações de associação.

Construtores

Nome Description
Binding()

Inicializa uma nova instância da classe Binding.

Binding(String)

Inicializa uma nova instância da Binding classe com um caminho inicial.

Campos

Nome Description
DoNothing

Usado como um valor retornado para instruir o mecanismo de associação a não executar nenhuma ação.

IndexerName

Usado como o PropertyName de PropertyChangedEventArgs indicar que uma propriedade do indexador foi alterada.

SourceUpdatedEvent

Identifica o SourceUpdated evento anexado.

TargetUpdatedEvent

Identifica o TargetUpdated evento anexado.

XmlNamespaceManagerProperty

Identifica a XmlNamespaceManager propriedade anexada.

Propriedades

Nome Description
AsyncState

Obtém ou define dados opacos passados para o dispatcher de dados assíncrono.

BindingGroupName

Obtém ou define o nome do BindingGroup ao qual essa associação pertence.

(Herdado de BindingBase)
BindsDirectlyToSource

Obtém ou define um valor que indica se o Path item de dados ou o DataSourceProvider objeto deve ser avaliado.

Converter

Obtém ou define o conversor a ser usado.

ConverterCulture

Obtém ou define a cultura na qual avaliar o conversor.

ConverterParameter

Obtém ou define o parâmetro a ser passado para o Converter.

Delay

Obtém ou define a quantidade de tempo, em milissegundos, para aguardar antes de atualizar a fonte de associação após o valor nas alterações de destino.

(Herdado de BindingBase)
ElementName

Obtém ou define o nome do elemento a ser usado como o objeto de origem de associação.

FallbackValue

Obtém ou define o valor a ser usado quando a associação não pode retornar um valor.

(Herdado de BindingBase)
IsAsync

Obtém ou define um valor que indica se os Binding valores devem ser obtidos e definidos de forma assíncrona.

Mode

Obtém ou define um valor que indica a direção do fluxo de dados na associação.

NotifyOnSourceUpdated

Obtém ou define um valor que indica se o SourceUpdated evento deve ser gerado quando um valor é transferido do destino de associação para a origem da associação.

NotifyOnTargetUpdated

Obtém ou define um valor que indica se o TargetUpdated evento deve ser gerado quando um valor é transferido da origem da associação para o destino de associação.

NotifyOnValidationError

Obtém ou define um valor que indica se o Error evento anexado deve ser gerado no objeto associado.

Path

Obtém ou define o caminho para a propriedade de origem de associação.

RelativeSource

Obtém ou define a origem da associação especificando seu local em relação à posição do destino de associação.

Source

Obtém ou define o objeto a ser usado como a origem da associação.

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.

(Herdado de BindingBase)
TargetNullValue

Obtém ou define o valor usado no destino quando o valor da origem é 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. Isso só será aplicável se você tiver associado uma associação ExceptionValidationRule .

UpdateSourceTrigger

Obtém ou define um valor que determina o tempo de vinculação de atualizações de origem.

ValidatesOnDataErrors

Obtém ou define um valor que indica se deve incluir o DataErrorValidationRule.

ValidatesOnExceptions

Obtém ou define um valor que indica se deve incluir o ExceptionValidationRule.

ValidatesOnNotifyDataErrors

Obtém ou define um valor que indica se deve incluir o NotifyDataErrorValidationRule.

ValidationRules

Obtém uma coleção de regras que verificam a validade da entrada do usuário.

XPath

Obtém ou define uma XPath consulta que retorna o valor na fonte de associação XML a ser usada.

Propriedades Anexadas

Nome Description
XmlNamespaceManager

Obtém ou define o XmlNamespaceManager usado para executar consultas com reconhecimento XPath de namespace em associações XML.

Métodos

Nome Description
AddSourceUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Adiciona um manipulador para o SourceUpdated evento anexado.

AddTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Adiciona um manipulador para o TargetUpdated evento anexado.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetXmlNamespaceManager(DependencyObject)

Retorna um objeto do gerenciador de namespace XML usado pela associação anexada ao objeto especificado.

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

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

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

Remove um manipulador para o SourceUpdated evento anexado.

RemoveTargetUpdatedHandler(DependencyObject, EventHandler<DataTransferEventArgs>)

Remove um manipulador para o TargetUpdated evento anexado.

SetXmlNamespaceManager(DependencyObject, XmlNamespaceManager)

Define um objeto do gerenciador de namespace usado pela associação anexada ao elemento fornecido.

ShouldSerializeFallbackValue()

Retorna um valor que indica se os processos de serialização devem serializar o valor efetivo da FallbackValue propriedade em instâncias dessa classe.

(Herdado de BindingBase)
ShouldSerializePath()

Indica se a Path propriedade deve ser mantida.

ShouldSerializeSource()

Indica se a Source propriedade deve ser mantida.

ShouldSerializeTargetNullValue()

Retorna um valor que indica se a TargetNullValue propriedade deve ser serializada.

(Herdado de BindingBase)
ShouldSerializeValidationRules()

Indica se a ValidationRules propriedade deve ser mantida.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Eventos Anexados

Nome Description
SourceUpdated

Ocorre quando um valor é transferido do destino de associação para a origem da associação, mas apenas para associações com o NotifyOnSourceUpdated valor definido como true.

TargetUpdated

Ocorre quando um valor é transferido da origem da associação para o destino de associação, mas apenas para associações com o NotifyOnTargetUpdated valor definido como true.

Aplica-se a

Confira também