I recently started C# and I've got the feedback that I still repeat too much. How can I make it less repetitive?
namespace ExtraOefLabo
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
string click = "";
private void btnOk_Click(object sender, RoutedEventArgs e)
{
//Input
//Proccess
//Output
if (click == "9382")
{
MessageBox.Show("Cracked the code!");
}
}
private void btnNr1_Click(object sender, RoutedEventArgs e)
{
click+= "1";
}
private void btnNr2_Click(object sender, RoutedEventArgs e)
{
click += "2";
}
private void btnNr3_Click(object sender, RoutedEventArgs e)
{
click += "3";
}
private void btnNr4_Click(object sender, RoutedEventArgs e)
{
click +="4";
}
private void btnNr5_Click(object sender, RoutedEventArgs e)
{
click += "5";
}
private void btnNr6_Click(object sender, RoutedEventArgs e)
{
click += "6";
}
private void btnNr7_Click(object sender, RoutedEventArgs e)
{
click += "7";
}
private void btnNr8_Click(object sender, RoutedEventArgs e)
{
click += "8";
}
private void btnNr9_Click(object sender, RoutedEventArgs e)
{
click += "9";
}
private void BtnNr0_Click(object sender, RoutedEventArgs e)
{
click += "0";
}
private void btnEnd_Click(object sender, RoutedEventArgs e)
{
Application.Current.Shutdown();
}
}
}
XAML
<Window x:Class="ExtraOefLabo.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:ExtraOefLabo"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
</Grid.RowDefinitions>
<Button x:Name="btnNr1" Content="1" HorizontalAlignment="Left" Height="25" Margin="115,51,0,0" VerticalAlignment="Top" Width="81" Click="btnNr1_Click"/>
<Button x:Name="btnNr2" Content="2" HorizontalAlignment="Left" Height="25" Margin="201,51,0,0" VerticalAlignment="Top" Width="81" Click="btnNr2_Click"/>
<Button x:Name="btnNr3" Content="3" HorizontalAlignment="Left" Height="25" Margin="287,51,0,0" VerticalAlignment="Top" Width="81" Click="btnNr3_Click"/>
<Button x:Name="btnNr4" Content="4" HorizontalAlignment="Left" Height="25" Margin="115,81,0,0" VerticalAlignment="Top" Width="81" Click="btnNr4_Click"/>
<Button x:Name="btnNr5" Content="5" HorizontalAlignment="Left" Height="25" Margin="201,81,0,0" VerticalAlignment="Top" Width="81" Click="btnNr5_Click"/>
<Button x:Name="btnNr6" Content="6" HorizontalAlignment="Left" Height="25" Margin="287,81,0,0" VerticalAlignment="Top" Width="81" Click="btnNr6_Click"/>
<Button x:Name="btnNr7" Content="7" HorizontalAlignment="Left" Height="25" Margin="115,111,0,0" VerticalAlignment="Top" Width="81" Click="btnNr7_Click"/>
<Button x:Name="btnNr8" Content="8" HorizontalAlignment="Left" Height="25" Margin="201,111,0,0" VerticalAlignment="Top" Width="81" Click="btnNr8_Click"/>
<Button x:Name="btnNr9" Content="9" HorizontalAlignment="Left" Height="25" Margin="287,111,0,0" VerticalAlignment="Top" Width="81" Click="btnNr9_Click"/>
<Button x:Name="BtnNr0" Content="0" HorizontalAlignment="Left" Height="25" Margin="201,141,0,0" VerticalAlignment="Top" Width="81" Click="BtnNr0_Click"/>
<Button x:Name="btnEnd" Content="End" HorizontalAlignment="Left" Height="25" Margin="115,141,0,0" VerticalAlignment="Top" Width="81" Click="btnEnd_Click"/>
<Button x:Name="btnOk" Content="OK" HorizontalAlignment="Left" Height="25" Margin="287,141,0,0" VerticalAlignment="Top" Width="81" Click="btnOk_Click"/>
</Grid>
</Window>