尽量多使用Canvas等简单的布局元素,少使用Grid或者StackPanel等复杂的,减小开销。少用Margin Padding尤其避免嵌套使用。在自定义控件,尽量不要在控件的ResourceDictionary定义资源,而应该放在Window或者Application级。因为放在控件中会使每个实...
分类:
其他好文 时间:
2014-07-16 22:53:45
阅读次数:
164
Binding在Slider控件与TextBox控件之间建立关联,值可以互相绑定,但是它们的数据类型是不同的,Slider是Double类型,Text为String。原来,Binding有一种机制称为数据转换(Data Converter),当数据绑定的源与目标不同类型时,处理比较简单时,系统就自动...
分类:
其他好文 时间:
2014-07-16 22:48:23
阅读次数:
229
我们知道,在WPF中对应一个DependencyObject,我们很容易通过AttachedProperty来为类型附加一个属性。但对于普通的Object而言,这就不可行了,不过还是可以耍一些小花招。
分类:
其他好文 时间:
2014-07-16 21:54:21
阅读次数:
168
网上找了 好久 没找到好的自己实现了3种1.用clip属性2。用装饰器Adorner3.修改模板1。clip 就是画一个圆角矩形但是这个在listview size 变化时 也要调用这个方法代码如下: 1 using System; 2 using System.Windows; 3 using S...
分类:
其他好文 时间:
2014-07-16 21:24:58
阅读次数:
279
程序通常需要显示某些提醒用户警示的信息,如:收件箱(40)其中数量闪烁就会起到警示效果。可以适用如下Storyboard实现: ...
分类:
其他好文 时间:
2014-07-16 21:14:10
阅读次数:
747
浅谈C#中常见的委托Func,Action,Predicate全面解析,winform和WPF更新UI
分类:
其他好文 时间:
2014-07-16 19:48:32
阅读次数:
293
WPF用于布局的面板主要有6个,StackPanel(栈面板)、WrapPanel(环绕面板)、DockPanel(停靠面板)、Canvas(画布)、Grid(网格面板)和 UniformGrid(均布网格)。一下详细介绍几种面板各自的特点:1、StackPanel 栈面板,可以将元素排列成一...
分类:
其他好文 时间:
2014-07-13 11:50:33
阅读次数:
233
如果线较多时,在画布中用Path或Line生成时会比较慢。用DrawingVisual可以快速生成,这个在之前我的博客中已经提到。但在类库形式下生成的无法看到,保存成Image后再加入图层后成功显示。 DrawingVisual drawingVisual = new DrawingVisual()...
分类:
其他好文 时间:
2014-07-13 11:08:30
阅读次数:
185
//only set DialogResult when window is ShowDialog before if(System.Windows.Interop.ComponentDispatcher.IsThreadModal) m_Ow...