SettingPage.xaml.cs 869 B

123456789101112131415161718192021222324
  1. namespace NatTypeTester.Views;
  2. [ExposeServices(typeof(IViewFor<SettingViewModel>))]
  3. [UsedImplicitly]
  4. internal sealed partial class SettingPage : ITransientDependency
  5. {
  6. public SettingPage()
  7. {
  8. InitializeComponent();
  9. this.WhenActivated(d =>
  10. {
  11. this.Bind(ViewModel, vm => vm.Config.ProxyServer, v => v.ProxyServerTextBox.Text).DisposeWith(d);
  12. this.Bind(ViewModel, vm => vm.Config.ProxyUser, v => v.ProxyUsernameTextBox.Text).DisposeWith(d);
  13. this.Bind(ViewModel, vm => vm.Config.ProxyPassword, v => v.ProxyPasswordTextBox.Text).DisposeWith(d);
  14. this.Bind(ViewModel, vm => vm.Config.ProxyType, v => v.ProxyRadioButtons.SelectedIndex, type => (int)type, index => (ProxyType)index).DisposeWith(d);
  15. this.OneWayBind(ViewModel, vm => vm.Config.ProxyType, v => v.ProxyConfigGrid.IsEnabled, type => type is not ProxyType.Plain).DisposeWith(d);
  16. });
  17. }
  18. }