原文:使用Blend的一些问题
WPF开发,界面处理首选Blend,如果你开发了两年WPF都没接触过blend(当然这种几率不高),或者你刚接触WPF,可以考虑使用Blend,这货也算得上一个神器,上手也不难。以下有两位讲得不错,大家可以翻翻。
blog.csdn.net/lubingda/article/details/7107383
http://www.cnblogs.com/kaodigua/category/283287.html
然而在使用的过程中也遇到一些问题,这里整理了下。
1.Blend里窗体宽高设为1024*768含义
1024 = 窗口的两条边框+内容
768
=窗口标题栏+窗口底边框+系统任务栏
而且,在win7里最大化窗口时会隐藏窗口左右两边和底边的
2.Margin
某个控件的周围与它的直接父容器的间距,布局里经常用到
Margin 0,0,0,0分别是左,上,右,下 ← ↑ →
↓
3.同样的一个文本控件,字号在VS2010里默认是12号,而在Blend4里却是9号
这个问题是由于两者字体默认单位不一样,Blend4里默认的单位是英镑,工具→选项→单位
英镑改为像素即可一致。
4.用户控件添加到其他界面后有黄色叹号和虚框
在项目里生成项目/重新生成项目即可。
5.鼠标移到Grid边框上时不可以选中整行或者整列
工具→选项→美工板→布局→使用网格布局模式 勾选即可。
6.Blend4嵌入字体后每次运行程序都会在C盘里生成大量文件占用空间
这个问题一般出现在嵌入字体后,每次跑程序都会在C:\Users\XXX\AppData\Local\Microsoft\Expression\Blend,XXX是用户名,这是Win7的路径,XP可能在其他路径下,目前没有找到什么办法可以阻止,只能手动去删除。
7.blend打开项目、xaml文件一直未响应、打开出错
是因为这个界面xaml文件里引用了一个类文件(可能是一个资源类,DateContext、或者转换器、或自定义控件),初始化时需要连接数据库,没法连接,所以不要在xaml里引用,在后台里写后行了。
①blend打开项目一直未响应:某个项目下的debug文件夹内文件错误,删除该debug文件夹或者清理下解决方案。其他解决方法:先打开blend或者只打开blend
或者不要用blend跑代码。
②blend打开xaml文件一直未响应:该xaml文件内嵌套的某个UserControl可能在Loaded事件里写了东西,窗体在打开(不管程序有没有跑起来)会去执行该UserControl的loaded事件来初始化这个UserControl,在xmal里移除该UserControl即可,然后再优化loaded事件。或者如下来处理:
//在WPF中
using System.ComponentModel;if (!DesignerProperties.GetIsInDesignMode(this))
{
//...
}//在WinForm开发中,一般会在窗体或者UserControl中判断当前是否为设计状态,如:
if (!this.DesignMode)
{
//
}
这个方法试过,好像用处不大。而且有些东西是写在ViewModel里的,不涉及UI的,这样写会破坏结构,所以,利索点,移除掉吧。
8.怎样画一条闭合的路径
- 键盘按P切换到路径选中状态,然后先选中起始点点,按住Shift键不放,鼠标移到另外一个需要连接的点上,等鼠标变成一个圆圈就可以点下去连接上了。
- 如果是两条不相干的路径,则要先把两条路径同时选中,再进行上面的操作。或者也可以选把两条路径生成一条复合路径再操作。