Binding com Csharp
19/10/2015
0
Bom Dia
Tenho o XAML, onde se eu defino um resource lPessoa eu consigo fazer o Binding mas não sei como recuperar essa informação sem ser pelo TextBox, porém se criar a classe pessoa no Código como faço para fazer o Binding dinamicamente pelo XAML?
Tenho o XAML, onde se eu defino um resource lPessoa eu consigo fazer o Binding mas não sei como recuperar essa informação sem ser pelo TextBox, porém se criar a classe pessoa no Código como faço para fazer o Binding dinamicamente pelo XAML?
<Window x:Class="TesteBinding.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:TesteBinding" mc:Ignorable="d" Title="MainWindow" Height="150" Width="300"> <Window.Resources> <local:Pessoa x:Key="lPessoa" Nome="Lucas" Idade="27"/> </Window.Resources> <Canvas> <Label Canvas.Top="10" Canvas.Left="10" >Nome</Label> <TextBox Name="txtNome" Width="200" Height="20" Canvas.Top="10" Canvas.Left="70" Text="{Binding Source={StaticResource lPessoa},Path=Nome,Mode=TwoWay}"/> <Label Canvas.Top="40" Canvas.Left="10" >Idade</Label> <TextBox Name="txtIdade" Width="200" Height="20" Canvas.Top="40" Canvas.Left="70" Text="{Binding Source={StaticResource lPessoa},Path=Idade,Mode=TwoWay}" /> <Button Name="btnMsg" Width="100" Height="30" Content="Mensagem" Click="onClick" Canvas.Top="70" Canvas.Left="10" /> </Canvas> </Window>
public class Pessoa : INotifyPropertyChanged { private string _nome; private string _idade; public event PropertyChangedEventHandler PropertyChanged; public void RaisePropertyChanged(string prop) { if (PropertyChanged != null) { PropertyChanged(this, new PropertyChangedEventArgs(prop)); } } public string Nome { get { return _nome; } set { if (_nome != value) { _nome = value; RaisePropertyChanged("Nome"); } } } public string Idade { get { return _idade; } set { if (_idade != value) { _idade = value; RaisePropertyChanged("Idade"); } } } }
Lucas Ramos
Curtir tópico
+ 0
Responder
Posts
19/10/2015
Lucas Ramos
Consegui alimentar o DataContext do Canvas pelo código
Porém gostaria de saber como faz para alimentar o DataContext diretamente no código XAML
exemplo
Pessoa pessoa = new Pessoa(); public MainWindow() { InitializeComponent(); pessoa.Nome = "Lucas"; pessoa.Idade = "27"; this.teste.DataContext = pessoa; }
Porém gostaria de saber como faz para alimentar o DataContext diretamente no código XAML
exemplo
<Canvas DataContext="{local:pessoa}"> .... </Canvas>
Responder
Clique aqui para fazer login e interagir na Comunidade :)