public class CustomWrapper : ICustomWrapper
{
public Connect () {}
public Disconnect () {}
}
public interface ICustomWrapper
{
public Connect(string);
public Disconnect();
}public class CustomWrapper : ICustomWrapper
{
public Connect () {}
public Disconnect () {}
}
public interface ICustomWrapper
{
public Connect(string);
public Disconnect();
}public partial class MainWindow : Window
{
public static string radioParse {get; set;}
private readonly ICustomWrapper _customWrapper;
public MainWindow (ICustomWrapper customWrapper)
{
_customWrapper = customWrapper;
InitializeComponent();
}
public void Proceed_Click(object sender, RoutedEventArgs e)
{
var radioButton = Session.Children.OfType<RadioButton>()
.FirstOrDefault(r=> r.IsChecked.HasValue && r.IsChecked.Value);
if (radioButton == null)
MessageBox.Show("Select an Option");
else if (radioButton != null)
{
radioParse = "A"
SelectValue();
}
}
public void SelectValue();
{
_customWrapper.Connect(radioParse)
}public partial class MainWindow : Window
{
public static string radioParse {get; set;}
private readonly ICustomWrapper _customWrapper;
public MainWindow (ICustomWrapper customWrapper)
{
_customWrapper = customWrapper;
InitializeComponent();
}
public void Proceed_Click(object sender, RoutedEventArgs e)
{
var radioButton = Session.Children.OfType<RadioButton>()
.FirstOrDefault(r=> r.IsChecked.HasValue && r.IsChecked.Value);
if (radioButton == null)
MessageBox.Show("Select an Option");
else if (radioButton != null)
{
radioParse = "A"
SelectValue();
}
}
public void SelectValue();
{
_customWrapper.Connect(radioParse)
}<StackPanel>
<Button Content = "Proceed"
Command = "{Binding Path=NavigateHomeCommand}
Click = "Proceed_Click"/>
</StackPanel><StackPanel>
<Button Content = "Proceed"
Command = "{Binding Path=NavigateHomeCommand}
Click = "Proceed_Click"/>
</StackPanel>private ICustomWrapper _customWrapper;
public RelayCommand NavigateHomeCommand
public MainViewModel(INavigationService navigationService, ICustomWrapper customWrapper)
{
NavigateHomeCommand = new RelayCommand (o=> {Navigation.NavigateTo<HomeViewModel>(); } o=> true;
}private ICustomWrapper _customWrapper;
public RelayCommand NavigateHomeCommand
public MainViewModel(INavigationService navigationService, ICustomWrapper customWrapper)
{
NavigateHomeCommand = new RelayCommand (o=> {Navigation.NavigateTo<HomeViewModel>(); } o=> true;
}<DataTemplate DataType = "{x:Type TypeName=viewModel:HomeViewModel}">
<view:HomeView/>
</DataTemplate><DataTemplate DataType = "{x:Type TypeName=viewModel:HomeViewModel}">
<view:HomeView/>
</DataTemplate>public partial class App : Application
{
private readonly IServiceProvider _serviceProvider;
private readonly IService Collection services = new ServiceCollection();
{
public App
{
services = new ServiceCollection();
services.AddSingleton<MainWindow>(s =>
{
var window = new mainWindow(s.GetRequiredService<ICustomWrapper>());
window.DataContext = s.GetRequiredService<MainViewModel>();
return window;
});
services.AddSingleton<MainViewModel>();
services.AddSingleton<HomeViewModel>();
services.AddSingleTon<INavigationService, navigationService>();
services.AddSingleTon<ICustomWrapper, customWrapper>();
services.AddSingleton<Func<Type, ViewModelBase>>(serviceProvider => viewModelType => (ViewModelBase)serviceProvider.GetRequiredService(viewModelType));
_serviceProvider = services.BuildServiceProvider();
}
protected override void ONstartup(StartupEventArgs e)
{
MainWindow = _serviceProvider.GetRequiredService<MainWindow>();
MainWindow.Show();
base.OnStartup(e);
}public partial class App : Application
{
private readonly IServiceProvider _serviceProvider;
private readonly IService Collection services = new ServiceCollection();
{
public App
{
services = new ServiceCollection();
services.AddSingleton<MainWindow>(s =>
{
var window = new mainWindow(s.GetRequiredService<ICustomWrapper>());
window.DataContext = s.GetRequiredService<MainViewModel>();
return window;
});
services.AddSingleton<MainViewModel>();
services.AddSingleton<HomeViewModel>();
services.AddSingleTon<INavigationService, navigationService>();
services.AddSingleTon<ICustomWrapper, customWrapper>();
services.AddSingleton<Func<Type, ViewModelBase>>(serviceProvider => viewModelType => (ViewModelBase)serviceProvider.GetRequiredService(viewModelType));
_serviceProvider = services.BuildServiceProvider();
}
protected override void ONstartup(StartupEventArgs e)
{
MainWindow = _serviceProvider.GetRequiredService<MainWindow>();
MainWindow.Show();
base.OnStartup(e);
}public partial HomeView : UserControl
{
private readonly ICustomWrapper _customWrapper;
private readonly MainWindow mainWindow;
public HomeView(ICustomWrapper customWrapper, MainWindow mainWindow)
{
_mainWindow = mainWindow
customWrapper = customWrapper
}
private HomeView()
{
InitializeComponent();
}
private void Button1_Click(object sender, RoutedEventArgs e)
{
Logic _logic = new Logic(_customWrapper, _mainWindow);
_logic.Select();
}
}public partial HomeView : UserControl
{
private readonly ICustomWrapper _customWrapper;
private readonly MainWindow mainWindow;
public HomeView(ICustomWrapper customWrapper, MainWindow mainWindow)
{
_mainWindow = mainWindow
customWrapper = customWrapper
}
private HomeView()
{
InitializeComponent();
}
private void Button1_Click(object sender, RoutedEventArgs e)
{
Logic _logic = new Logic(_customWrapper, _mainWindow);
_logic.Select();
}
}public class Logic
{
private readonly ICustomWrapper _customWrapper;
private readonly MainWindow _mainWindow
public string connectLetter = Mainwindow.radioParse;
public Logic(ICustomWrapper customWrapper, MainWindow mainWindow)
{
_MainWindow = mainWindow;
_customWrapper = customWrapper;
}
public void Select()
{
_customWrapper.Disconnect();
]public class Logic
{
private readonly ICustomWrapper _customWrapper;
private readonly MainWindow _mainWindow
public string connectLetter = Mainwindow.radioParse;
public Logic(ICustomWrapper customWrapper, MainWindow mainWindow)
{
_MainWindow = mainWindow;
_customWrapper = customWrapper;
}
public void Select()
{
_customWrapper.Disconnect();
]