-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMainWindow.xaml
39 lines (36 loc) · 1.9 KB
/
MainWindow.xaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<Window x:Class="inlinetest.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525"
x:Name="root">
<StackPanel HorizontalAlignment="Center">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,100,0,20">
<TextBox Text="{Binding LeftSideNumber, ElementName=root}"
PreviewTextInput="ValidateIsNumber" Width="50" Margin="0,0,10,0"/>
<TextBlock>X</TextBlock>
<TextBox Text="{Binding RightSideNumber, ElementName=root}"
PreviewTextInput="ValidateIsNumber" Width="50" Margin="10,0,10,0"/>
<TextBlock Margin="0,0,10,0">=</TextBlock>
<TextBlock x:Name="Answer"/>
<x:Code>
<![CDATA[
private System.Text.RegularExpressions.Regex isNumberRegex =
new System.Text.RegularExpressions.Regex(@"^-*[0-9,\.]+$");
public string LeftSideNumber { get; set; }
public string RightSideNumber { get; set; }
void CalculateClicked(object sender, RoutedEventArgs e)
{
var left = Convert.ToDouble(LeftSideNumber);
var right = Convert.ToDouble(RightSideNumber);
Answer.Text = Convert.ToString(left * right);
}
void ValidateIsNumber(object sender, TextCompositionEventArgs e)
{
e.Handled = !isNumberRegex.IsMatch(e.Text);
}
]]>
</x:Code>
</StackPanel>
<Button Click="CalculateClicked" Width="100">Calculate</Button>
</StackPanel>
</Window>