摘要:如何真懂的话。初中几何就够了。题目很简单。在不明显改变Geometry视觉效果的提前下,请简化下列代码。并简述简化后的代码与原代码有什么不同?<StreamGeometry x:Key="SomeTexture">M0,2 L1,2 1,3 0,3Z M1,1 L2,1 2,2 1,2 z M2,0 L3,0 3,1 2,1 Z M3,5 L4,5 4,6 3,6 Z M4,4 L5,...
阅读全文
摘要:充分利用界面上的空间,是优秀软件界面布局设计的原则之一。如果布局上出现了大片的空白区域就会给人一种浪费和不谐调的感觉。如下图所示。 我们把ListBox的ItemsPanel设置为一个WrapPanel。让里面的Items可以自动折行。但是这样在ListBox的右侧,会出现一块空白区。很多情况下,我们对于Item的大小并不很在意,这时我们会更希望Item的宽度可以随着整体宽度自动地调节。产生如下...
阅读全文
摘要:在上一篇中,介绍了如何实现类似QQ中分组面板的功能。这一次将介绍如何用另一种方式实现这个功能,并添加动画效果。 在上一篇所介绍的方式中,主要的技术点其实就是那个作为ItemsPanel的自定义Panel。然而这种实现方式有两个主要缺点。1. 没有了Virtualizing的效果。虽然没有不可见项。2. 不便于添加动画效果。这里将向大家介绍另一种实现方式。就是用Blend 3中非常火爆的Behavi...
阅读全文
摘要:要实现的面板的效果如下图所示: 一个面板打开了,其它的面板会自动收起。而且打开的面板会填充所有可用空间。那么这样的效果在WPF里应该如何实现呢? 1. 多个面板,排成一排,感觉可以用ListBox。 2. 然后里面的东西,点一下打开,再点一下收起。感觉就是一个Expander嘛。 3. 一个打开,其它所有的收起。可以把Expander的IsExpanded与SelectedItem绑定。 ...
阅读全文
摘要:考虑下面这样的界面布局。 对于这个小窗口而言,东西少。可以把窗口定死在500*300这样。但是如果这个表单是属于一个大窗体的一个部分。情况就比较复杂了。 我们并不能把窗口定死大小。因为窗口有可能会需要在1920*1200到1024*768等不同的分辨率下运行。这样这个表单在不同情况下的大小就有可能有很大的差别。 一个比较好的方案是,当窗口变小,第一行放不下所有控件时。换到第二行。当窗口变大,第一行...
阅读全文
摘要:我们都知道在WPF中,所有的控件都有Resources属性,里面可以放Resource。一般比较常用的Resource位置就是Application的Resource和各个Window的Resource。那么这两个Resource的位置,除了作用范围不同之外,还有什么不同呢? 一个不同点就是,Application的Resource会被作用一个全局共享的Resource的来源。这会给Merge R...
阅读全文