Здравствуйте, у меня есть приложение, формата WPF. В нем у меня есть два TextBox'а которые принимают значения для формулы и три RadioButton'а, которые должны менять функцию в формуле. Например, если пользователь выбирает sh(x), то в формуле f(x) должна меняться на выбранный параметр и так далее. Поэтому мне нужно понять как это сделать.
Код разметки окошка:
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="150"/>
<RowDefinition/>
<RowDefinition Height="60"/>
</Grid.RowDefinitions>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="30"/>
<RowDefinition/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Orientation="Horizontal">
<Label Content="X = "/>
<TextBox x:Name="Pole_X" Height="15" Width="200"/>
</StackPanel>
<StackPanel Grid.Row="1" Orientation="Horizontal">
<Label Content="Y = "/>
<TextBox x:Name="Pole_Y" Height="15" Width="200"/>
</StackPanel>
<StackPanel Grid.Row="2" VerticalAlignment="Center">
<RadioButton GroupName="Function" x:Name="func_shx" Content="sh(x)" Margin="5" Checked="func_shx_Checked"/>
<RadioButton GroupName="Function" x:Name="func_x2" Content="x^2" Margin="5" Checked="func_x2_Checked"/>
<RadioButton GroupName="Function" x:Name="func_ex" Content="e^x" Margin="5" Checked="func_ex_Checked"/>
</StackPanel>
</Grid>
<StackPanel Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Center">
<Label Content="Результат выполнения программы:"/>
<TextBox x:Name="Pole_result" Width="300" Height="175" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" IsReadOnly="True"/>
</StackPanel>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0" Orientation="Horizontal" HorizontalAlignment="Center">
<Button x:Name="Btn_Start" Click="Btn_Start_Click" Grid.Row="2" Width="100" Height="30" Content="Пуск"/>
</StackPanel>
<StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Center">
<Button x:Name="Btn_Delete" Click="Btn_Delete_Click" Grid.Row="2" Width="100" Height="30" Content="Очистить"/>
</StackPanel>
</Grid>
</Grid>
Код Xaml.cs кнопки Пуск:
private void Btn_Start_Click(object sender, RoutedEventArgs e)
{
double x = double.Parse(Pole_X.Text);
Pole_result.Text += Environment.NewLine + "При X = " + x.ToString();
double y = double.Parse(Pole_Y.Text);
Pole_result.Text += Environment.NewLine + "При Y = " + y.ToString();
double u;
if(func_x2.Checked)
if (x * y > 0)
{
u = Math.Pow(Math.Pow(x, 2) + y, 2) - Math.Sqrt(Math.Pow(x, 2) * y);
Pole_result.Text += Environment.NewLine + "A (XY > 0) = " + u.ToString();
}
else if (x * y < 0)
{
u = Math.Pow(Math.Pow(x, 2) + y, 2) + Math.Sqrt(Math.Abs(Math.Pow(x, 2) * y));
Pole_result.Text += Environment.NewLine + "A (XY < 0) = " + u.ToString();
}
else if (x * y == 0)
{
u = Math.Pow(Math.Pow(x, 2) + y, 2) + 1;
Pole_result.Text += Environment.NewLine + "A (XY = 0) = " + u.ToString();
}
}
Заранее спасибо за помощь