伪深入浅出WPF(非刘铁猛老师)
前言
又到了期末课设的时间,其实这次的课设的主题是SQL Server数据库,但是听老师说要做界面那就C#走起,然后上次读《HeadFirs C#》的时候,书上的第一个例子就是WPF,感觉XAML学起来比WinForm有意思多了,上手也比较容易,就正式走进了UI编程的大门了。
过程
到昨天晚上算是终于做完了,回顾看来其实也没有花多久时间,从26号到29号总计3个晚上吧,大概有900行代码,量不多,但是踩的坑确实不少,学的东西也越多喽。后来发现Windows UI 开发挺有趣的,肝了两个晚上学了点皮毛。
工具
- Visual Studio 2017
- SQL Server 2012/2017 Express /For Linux
- Windows10
- GitHub/Git
- Centos7.6
踩坑
CheckBox
只有在属性IsChecked
为false
的状态下才能触发事件,并且一旦触发,属性立马改变而非执行完才改变。- MainWindow的属性为只读,不可修改,可以通过
Maindow mainWindow = (MainWindow)System.Current.MainWindow;
获取一个实例。 - Xaml和Xaml.cs两个文件编译后共同形成一个完整的Class这也是Partial修饰限定符的做法
bool?
变量不可自动转换为bool
变量,使用==false or true
转换- git pull 与git fetch + git merge的区别
- 删除非
MainWindow
的控件或者关闭时,最好新开线程,在该类的进程下关闭。
总结
算是从大一开始来自己独立完成的第一个项目了,其实这几天学到的东西比我这个学期上课学到的都要有用,比如说Git的常用操作,WPF的低级操作,还有最重要的SQL Sever的操作。后两天为了做一些美化工作,比如初始化等待窗口时用到了多线程和委托,感觉起来还是稍微有点复杂,但总算入门了。