Próbuję uzyskać wartość dwóch pudełek Texbox (symuluję okno logowania) po naciśnięciu przycisku. Polecenie przypisane w przycisku uruchamia się poprawnie, ale nie wiem, jak uzyskać wartość pól tekstowych do "logowania".WPF i MVVM: Uzyskaj wartości z pól tekstowych i wyślij je do ViewModel
To mój ViewModel:
class LoginViewModel : BaseViewModel
{
public LoginViewModel()
{
}
private DelegateCommand loginCommand;
public ICommand LoginCommand
{
get
{
if (loginCommand == null)
loginCommand = new DelegateCommand(new Action(LoginExecuted),
new Func<bool>(LoginCanExecute));
return loginCommand;
}
}
public bool LoginCanExecute()
{
//Basic strings validation...
return true;
}
public void LoginExecuted()
{
//Do the validation with the Database.
System.Windows.MessageBox.Show("OK");
}
}
To jest widok:
<Grid DataContext="{StaticResource LoginViewModel}">
<TextBox x:Name="LoginTxtBox" HorizontalAlignment="Left" Height="23" Margin="34,62,0,0" Width="154" />
<PasswordBox x:Name="PasswordTxtBox" HorizontalAlignment="Left" Height="23" Margin="34,104,0,0" Width="154"/>
<Button x:Name="btnAccept"
HorizontalAlignment="Left"
Margin="34,153,0,0"
Width="108"
Content="{DynamicResource acceptBtn}" Height="31" BorderThickness="3"
Command="{Binding LoginCommand}"/>
Jeśli ktoś może pomóc ... będę nieskończenie wdzięczny.
Tak dobrze! Dziękuję, działa idealnie! –
Mimo że jest to stary wpis, ale w jaki sposób uzyskać tę samą funkcjonalność, jeśli muszę podać wiele adresów e-mail w polu Pole tekstowe? W polu tekstowym Przypuśćmy, że piszę w ten sposób: "[email protected], defg @ yahoo.com, test @ gmail.com", a następnie w jaki sposób powiązać to z viewmodelem – Debhere
@Nie musisz rozdzielić e-maile za pomocą string.Split lub podobne, aby wyodrębnić je w VM. –