Compartilhar via


Associar controles WPF a dados no Visual Studio

 

Publicado: abril de 2016

Você pode exibir dados para usuários do seu aplicativo pela vinculação de dados para WPF controles. Para criar esses controles ligados a dados, você pode arrastar itens do fontes de dados janela para o WPF Designer em Visual Studio. Este tópico descreve algumas das tarefas, ferramentas e classes que você pode usar para criar a associação de dados mais comuns WPF aplicativos.

Para obter informações gerais sobre como criar controles ligados a dados em Visual Studio, consulte Associar controles a dados no Visual Studio. Para obter mais informações sobre WPF associação de dados, consulte Visão geral de associação de dados.

Tarefas envolvidas na associando controles WPF a dados

A tabela a seguir lista as tarefas que podem ser realizadas arrastando itens do fontes de dados janela para o WPF Designer.

Tarefa Mais informações
Crie novos controles ligados a dados.

Vincule controles existentes a dados.
Associar controles WPF a dados no Visual Studio Associar controles WPF a um conjunto de dados
Criar controles que exibem dados relacionados em uma relação pai-filho: quando o usuário seleciona um registro de dados pai em um controle, o outro controle exibe dados filho relacionados para o registro selecionado. Exibir dados relacionados em aplicativos WPF
Criar um tabela de pesquisa que exibe informações de uma tabela com base no valor de um campo de chave estrangeira em outra tabela. Criar tabelas de pesquisa em aplicativos do WPF
Associar um controle a uma imagem em um banco de dados. Associar controles a imagens de um banco de dados

Destinos depósitos válidos

Você pode arrastar itens do fontes de dados janela apenas para destinos depósitos válidos no WPF Designer. Há dois tipos principais de destinos depósitos válidos: contêineres e controles. Um contêiner é um elemento de interface do usuário que normalmente contém controles. Por exemplo, uma grade é um contêiner, e então é uma janela.

XAML e código gerados

Quando você arrasta um item do fontes de dados janela para o WPF Designer, Visual Studio gera XAML que define um novo controle ligado a dados (ou associa um controle existente para a fonte de dados). Para algumas fontes de dados, Visual Studio também gera código no arquivo de code-behind que preenche a fonte de dados com dados.

A seguinte tabela lista o XAML e o código Visual Studio gera para cada tipo de fonte de dados de fontes de dados janela.

Fonte de dados Gerar XAML que associa um controle à fonte de dados Gerar código que preenche a fonte de dados com dados
Conjunto de dados Sim Sim
Modelo de Dados de Entidade Sim Sim
Serviço Sim Não
Objeto Sim Não

Conjuntos de dados

Quando você arrasta uma tabela ou coluna a partir de fontes de dados janela para o designer, Visual Studio gera XAML que faz o seguinte:

  • Adiciona o conjunto de dados e um novo CollectionViewSource os recursos do contêiner arrastados para o item. O CollectionViewSource é um objeto que pode ser usado para navegar e exibir os dados no conjunto de dados.

  • Cria uma associação de dados para um controle. Se você arrastar o item para um controle existente no designer, o XAML associará o controle ao item. Se você arrastar o item para um contêiner, o XAML cria o controle selecionado para o item arrastado e associará o controle ao item. O controle é criado dentro de um novo Grid.

Visual Studio também faz as seguintes alterações no arquivo code-behind:

  • Cria um Loaded manipulador de eventos para o Interface de Usuário elemento que contém o controle. O manipulador de eventos preenche a tabela com dados, recupera o CollectionViewSource de contêiner recursos e, em seguida, faz o primeiro item dados o item atual. Se um Loaded já existe um manipulador de eventos, Visual Studio adiciona este código ao manipulador de eventos existente.

Modelos de dados de entidade

Quando você arrasta uma entidade ou uma propriedade de entidade a partir de fontes de dados janela para o designer, Visual Studio gera XAML que faz o seguinte:

  • Adiciona um novo CollectionViewSource os recursos do contêiner arrastados para o item. O CollectionViewSource é um objeto que pode ser usado para navegar e exibir os dados na entidade.

  • Cria uma associação de dados para um controle. Se você arrastar o item para um controle existente no designer, o XAML associará o controle ao item. Se você arrastar o item para um contêiner, o XAML cria o controle que foi selecionado para o item arrastado e associará o controle ao item. O controle é criado dentro de um novo Grid.

Visual Studio também faz as seguintes alterações para o arquivo code-behind:

  • Adiciona um novo método que retorna uma consulta para a entidade que você arrastou para o designer (ou a entidade que contém a propriedade que você arrastou para o designer). O novo método tem o nome GetEntityNameconsulta, onde EntityName é o nome da entidade.

  • Cria um Loaded manipulador de eventos para o Interface de Usuário elemento que contém o controle. O manipulador de eventos chama GetEntityNameconsultar o método para preencher a entidade com dados, recupera o CollectionViewSource de contêiner recursos e, em seguida, faz o primeiro item dados o item atual. Se um Loaded já existe um manipulador de eventos, Visual Studio adiciona este código ao manipulador de eventos existente.

Serviços

Quando você arrasta um objeto de serviço ou a propriedade a partir de fontes de dados janela para o designer, Visual Studio gera XAML que cria um controle ligado a dados (ou associa um controle existente para o objeto ou propriedade). No entanto, Visual Studio não gera código que preenche o objeto de serviço de proxy com dados. Você deve escrever esse código. Para obter um exemplo que demonstra como fazer isso, consulte Associar controles WPF a um WCF data service.

O Visual Studio gera XAML que faz o seguinte:

  • Adiciona um novo CollectionViewSource os recursos do contêiner que você arrastados para o item. O CollectionViewSource é um objeto que pode ser usado para navegar e exibir os dados no objeto que é retornado pelo serviço.

  • Cria uma associação de dados para um controle. Se você arrastar o item para um controle existente no designer, o XAML associará o controle ao item. Se você arrastar o item para um contêiner, o XAML cria o controle que foi selecionado para o item arrastado e associará o controle ao item. O controle é criado dentro de um novo Grid.

Objetos

Quando você arrasta um objeto ou propriedade do fontes de dados janela para o designer, Visual Studio gera XAML que cria um controle ligado a dados (ou associa um controle existente para o objeto ou propriedade). No entanto, Visual Studio não gera código para preencher o objeto com dados. Você deve escrever esse código.

Dica

Classes personalizadas devem ser público e ter um construtor sem parâmetros padrão. Eles não podem ser classes aninhadas com um ponto na sintaxe. Para obter mais informações, consulte XAML e Classes personalizadas para WPF.

Visual Studio gera XAML que faz o seguinte:

  • Adiciona um novo CollectionViewSource os recursos do contêiner que você arrastados para o item. O CollectionViewSource é um objeto que pode ser usado para navegar e exibir os dados no objeto.

  • Cria uma associação de dados para um controle. Se você arrastar o item para um controle existente no designer, o XAML associará o controle ao item. Se você arrastar o item para um contêiner, o XAML cria o controle selecionado para o item arrastado e associará o controle ao item. O controle é criado dentro de um novo Grid.

Consulte também

Associar controles a dados no Visual Studio