XAML代码
<Window x:Class="MyList.UI.RegisterEditWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:MyList.UI" xmlns:entity="clr-namespace:MyList.Entity;assembly=MyList.Entity" xmlns:util="clr-namespace:MyList.UI.Util" Title="编辑注册记录" Height="430" Width="300" x:Name="window1"> <Window.Resources> </Window.Resources> <StackPanel DataContext="{Binding SaveData}"> <WrapPanel Margin="10,30,0,0"> <TextBlock Text="网站名称" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" > <Binding Path="registerUrlName" UpdateSourceTrigger="PropertyChanged" ValidatesOnDataErrors="True" NotifyOnValidationError="True" ValidatesOnExceptions="True"> </Binding> <TextBox.ToolTip> <Binding RelativeSource="{RelativeSource Self}" Path="(Validation.Errors)[0].ErrorContent"></Binding> </TextBox.ToolTip> </TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="网站地址" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding registerUrl, UpdateSourceTrigger=PropertyChanged, ValidatesOnExceptions=True, ValidatesOnDataErrors=True, NotifyOnValidationError=True}"> <TextBox.ToolTip> <Binding RelativeSource="{RelativeSource Self}" Path="(Validation.Errors)[0].ErrorContent"></Binding> </TextBox.ToolTip> </TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="用户名" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding registerUserName}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="密码" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding registerUserPassword}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="邮箱" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding registerEmail}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="绑定电话" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding bindTel}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="绑定QQ" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding bindQQ}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="绑定微博" Width="50"></TextBlock> <TextBox Width="180" Height="21" Margin="10,0,0,0" Text="{Binding bindWeibo}"></TextBox> </WrapPanel> <WrapPanel Margin="10,10,0,0"> <TextBlock Text="备注" Width="50"></TextBlock> <TextBox TextWrapping="Wrap" VerticalScrollBarVisibility="Auto" Width="180" Height="50" Margin="10,0,0,0" Text="{Binding movieRemark}"></TextBox> </WrapPanel> <Button Content="添加/修改" HorizontalAlignment="Center" Margin="0,20,0,0" x:Name="btnSubmit" Click="btnSubmit_Click"/> <!--<TextBlock Text="{Binding Source={StaticResource ResourceKey=Test}, Mode=OneWay}"></TextBlock>--> </StackPanel> </Window>
很少的后台代码
using MyList.Model; using MyList.ViewModel; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace MyList.UI { /// <summary> /// RegisterEditWindow.xaml 的交互逻辑 /// </summary> public partial class RegisterEditWindow : Window { public RegisterViewModel Model { get; set; } public RegisterEditWindow(RegisterViewModel model) { InitializeComponent(); if (model.SaveData == null) { model.SaveData = new System.Collections.ObjectModel.ObservableCollection<RegisterModel>(); model.SaveData.Add(new RegisterModel()); } this.Model = model; this.DataContext = model; } private void btnSubmit_Click(object sender, RoutedEventArgs e) { RegisterModel register = this.Model.SaveData.First(); if(!register.IsValid) { MessageBox.Show("验证失败:"+register.Error); return; } register.userID = TempData.UserID; this.Model.SaveCommand.Execute(null); this.DialogResult = true; } } }
5/31/2014 1:19:34 AM 58.253.223....