|
|
|
@ -1,6 +1,8 @@ |
|
|
|
|
<Window x:Class="MVVMwithWPF.MainWindow" |
|
|
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" |
|
|
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" |
|
|
|
|
xmlns:b="http://schemas.microsoft.com/xaml/behaviors" |
|
|
|
|
xmlns:converters="clr-namespace:MVVMwithWPF.Converters" |
|
|
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" |
|
|
|
|
xmlns:local="clr-namespace:MVVMwithWPF" |
|
|
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" |
|
|
|
@ -11,6 +13,12 @@ |
|
|
|
|
d:DataContext="{d:DesignInstance Type=viewModels:MainViewModel, |
|
|
|
|
IsDesignTimeCreatable=True}" |
|
|
|
|
mc:Ignorable="d"> |
|
|
|
|
<Window.Resources> |
|
|
|
|
<converters:BoolToVisibilityConverter x:Key="BoolToVisibilityConverter" /> |
|
|
|
|
<converters:BoolToVisibilityConverter x:Key="ReverseBoolToVisibilityConverter" |
|
|
|
|
FalseValue="Visible" TrueVlaue="Collapsed" /> |
|
|
|
|
</Window.Resources> |
|
|
|
|
|
|
|
|
|
<DockPanel> |
|
|
|
|
<Menu DockPanel.Dock="Top"> |
|
|
|
|
<MenuItem Header="_File"> |
|
|
|
@ -21,5 +29,129 @@ |
|
|
|
|
<MenuItem Header="_Exit" /> |
|
|
|
|
</MenuItem> |
|
|
|
|
</Menu> |
|
|
|
|
<Grid DockPanel.Dock="Bottom"> |
|
|
|
|
<Grid.ColumnDefinitions> |
|
|
|
|
<ColumnDefinition /> |
|
|
|
|
<ColumnDefinition /> |
|
|
|
|
</Grid.ColumnDefinitions> |
|
|
|
|
<Grid.RowDefinitions> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
<RowDefinition /> |
|
|
|
|
</Grid.RowDefinitions> |
|
|
|
|
<Button Width="80" |
|
|
|
|
HorizontalAlignment="Right" |
|
|
|
|
Content="Serch" /> |
|
|
|
|
<DataGrid x:Name="dgrMember" |
|
|
|
|
Grid.Row="1" |
|
|
|
|
Margin="0,10,0,0" |
|
|
|
|
AutoGenerateColumns="False" IsReadOnly="True" |
|
|
|
|
ItemsSource="{Binding Members}"> |
|
|
|
|
<b:Interaction.Triggers> |
|
|
|
|
<b:EventTrigger EventName="SelectionChanged"> |
|
|
|
|
<b:InvokeCommandAction Command="{Binding SelectionChangedCommand}" PassEventArgsToCommand="True" /> |
|
|
|
|
</b:EventTrigger> |
|
|
|
|
</b:Interaction.Triggers> |
|
|
|
|
<DataGrid.Columns> |
|
|
|
|
<DataGridTextColumn Binding="{Binding Id}" Header="Id" /> |
|
|
|
|
<DataGridTextColumn Binding="{Binding Name}" Header="Name" /> |
|
|
|
|
<DataGridTextColumn Binding="{Binding Phone}" Header="Phone" /> |
|
|
|
|
<DataGridTextColumn Binding="{Binding RegDate}" Header="Registered Date" /> |
|
|
|
|
<DataGridTextColumn Binding="{Binding IsUse}" Header="Use" /> |
|
|
|
|
</DataGrid.Columns> |
|
|
|
|
</DataGrid> |
|
|
|
|
<StackPanel Grid.Column="1" |
|
|
|
|
Margin="0,0,5,0" HorizontalAlignment="Right" |
|
|
|
|
Orientation="Horizontal"> |
|
|
|
|
<Button x:Name="btnNew" |
|
|
|
|
Width="80" |
|
|
|
|
Command="{Binding NewCommand}" |
|
|
|
|
Content="New" |
|
|
|
|
Visibility="{Binding IsEditing, Converter={StaticResource ReverseBoolToVisibilityConverter}}" /> |
|
|
|
|
<Button x:Name="btnEdit" |
|
|
|
|
Width="80" |
|
|
|
|
Command="{Binding EditCommand}" |
|
|
|
|
Content="Edit" |
|
|
|
|
Visibility="{Binding IsEditing, Converter={StaticResource ReverseBoolToVisibilityConverter}}" /> |
|
|
|
|
<Button x:Name="btnDelete" |
|
|
|
|
Width="80" |
|
|
|
|
Command="{Binding DeleteCommand}" |
|
|
|
|
Content="Delete" |
|
|
|
|
Visibility="{Binding IsEditing, Converter={StaticResource ReverseBoolToVisibilityConverter}}" /> |
|
|
|
|
<Button x:Name="btnSave" |
|
|
|
|
Width="80" |
|
|
|
|
Command="{Binding SaveCommand}" |
|
|
|
|
Content="Save" |
|
|
|
|
Visibility="{Binding IsEditing, Converter={StaticResource BoolToVisibilityConverter}}" /> |
|
|
|
|
<Button x:Name="btnCancel" |
|
|
|
|
Width="80" |
|
|
|
|
Command="{Binding CancleCommand}" |
|
|
|
|
Content="Cancel" |
|
|
|
|
Visibility="{Binding IsEditing, Converter={StaticResource BoolToVisibilityConverter}}" /> |
|
|
|
|
</StackPanel> |
|
|
|
|
<Grid x:Name="grdDetail" |
|
|
|
|
Grid.Row="1" Grid.Column="1" |
|
|
|
|
Margin="0,10,0,0" |
|
|
|
|
IsEnabled="{Binding IsEditing}"> |
|
|
|
|
<Grid.ColumnDefinitions> |
|
|
|
|
<ColumnDefinition Width="3*" /> |
|
|
|
|
<ColumnDefinition Width="7*" /> |
|
|
|
|
</Grid.ColumnDefinitions> |
|
|
|
|
<Grid.RowDefinitions> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
<RowDefinition Height="Auto" /> |
|
|
|
|
</Grid.RowDefinitions> |
|
|
|
|
<Border Margin="4" Background="Gray"> |
|
|
|
|
<TextBlock Margin="4,0,0,0" |
|
|
|
|
Foreground="White" Text="Id" /> |
|
|
|
|
</Border> |
|
|
|
|
<TextBlock x:Name="id" |
|
|
|
|
Grid.Column="1" |
|
|
|
|
Margin="4" |
|
|
|
|
Text="{Binding EditMember.Id}" /> |
|
|
|
|
<Border Grid.Row="1" |
|
|
|
|
Margin="4" |
|
|
|
|
Background="Gray"> |
|
|
|
|
<TextBlock Margin="4,0,0,0" |
|
|
|
|
Foreground="White" Text="Name" /> |
|
|
|
|
</Border> |
|
|
|
|
<TextBox x:Name="name" |
|
|
|
|
Grid.Row="1" Grid.Column="1" |
|
|
|
|
Margin="4" |
|
|
|
|
Text="{Binding EditMember.Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> |
|
|
|
|
<Border Grid.Row="2" |
|
|
|
|
Margin="4" |
|
|
|
|
Background="Gray"> |
|
|
|
|
<TextBlock Margin="4,0,0,0" |
|
|
|
|
Foreground="White" Text="Phone" /> |
|
|
|
|
</Border> |
|
|
|
|
<TextBox x:Name="phone" |
|
|
|
|
Grid.Row="2" Grid.Column="1" |
|
|
|
|
Margin="4" |
|
|
|
|
Text="{Binding EditMember.Phone, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> |
|
|
|
|
<Border Grid.Row="3" |
|
|
|
|
Margin="4" |
|
|
|
|
Background="Gray"> |
|
|
|
|
<TextBlock Margin="4,0,0,0" |
|
|
|
|
Foreground="White" Text="Registered Date" /> |
|
|
|
|
</Border> |
|
|
|
|
<TextBlock x:Name="regDate" |
|
|
|
|
Grid.Row="3" Grid.Column="1" |
|
|
|
|
Margin="4" |
|
|
|
|
Text="{Binding EditMember.RegDate, StringFormat={}{0:d}}" /> |
|
|
|
|
<Border Grid.Row="4" |
|
|
|
|
Margin="4" |
|
|
|
|
Background="Gray"> |
|
|
|
|
<TextBlock Margin="4,0,0,0" |
|
|
|
|
Foreground="White" Text="Use" /> |
|
|
|
|
</Border> |
|
|
|
|
<CheckBox x:Name="isUse" |
|
|
|
|
Grid.Row="4" Grid.Column="1" |
|
|
|
|
Margin="4" |
|
|
|
|
IsChecked="{Binding EditMember.IsUse, Mode=TwoWay}" /> |
|
|
|
|
</Grid> |
|
|
|
|
</Grid> |
|
|
|
|
</DockPanel> |
|
|
|
|
</Window> |
|
|
|
|