随笔分类 - WPF
摘要:我们知道,在WPF中对应一个DependencyObject,我们很容易通过AttachedProperty来为类型附加一个属性。但对于普通的Object而言,这就不可行了,不过还是可以耍一些小花招。
阅读全文
摘要:尽管一个类会提供很多事件,但有时候还是显得不够,比如说前两天我就以为WPF的ListBox控件会有ItemsSourceChanged事件,但好像没有。这里有一个方法可以监视任何一个DependencyProperty的Changed,下面是demo:
阅读全文
摘要:大多数框架下都提供了事件管理器的,但不使用框架时为了让事件发送者和事件接收者之间解耦,就可以如下写个简单的
阅读全文
摘要:今天在写一个WPF控件时用到了Popup控件,很郁闷的情况是:当popup关闭时,原来被popup挡住的界面部分不刷新,非要手动刷新一下(比如最大最小化一下窗口),原来是AllowsTransparency这个属性引起的,将其设置为true就可以了
阅读全文
摘要: 刚刚做完的一个屏幕截图程序,分享一下
阅读全文
摘要:难道该死的[WPF]RichTextBox没有经过测试就拿来发布了?
阅读全文
摘要:根据文本内容自动设置大小的RichTextBox
阅读全文
摘要:折腾了一整天内存问题(口水贴, 不喜勿进)
阅读全文
摘要:我们可以调用Focus()方法,让WPF控件获得焦点, 那我现在不想要焦点了, 如何把这个包袱抛出去?
阅读全文
摘要:WPF没有提供这个方法,还真是让人觉得有些讨厌啊,这里介绍了几种方式。
阅读全文
摘要:浅谈个人理解的AttachProperty和Behavior
阅读全文
摘要:在WPF中,假设有一个对象People,我们要将某元素的某个属性绑定到它的Name属性的话,Path就是"Name”,但如果我们要绑定要List的第i个元素呢,应该这样写:".[i]"
阅读全文
摘要:正如绑定TextBox控件的Text属性一样, 我们希望能够将PasswordBox空间的Password属性进行绑定, 比如在MVVM模式中,这似乎是必须的, 但可惜的是, Password属性是不支持绑定的(不是依赖属性, 也没有实现INotifyPropertyChanged).
这可能是出于安全性的考虑. 但在我们的系统为了实现View层密码框中的密码与后台其它层之间的密码属性之间的绑定, 可以采取如下思路: 将密码框的密码和某一个缓冲区进行同步, 缓冲区在和后台进行绑定. 其中密码框与缓冲区之间的同步可采用事件进行通知, 并将缓冲区打造成依赖属性, 然后缓冲区就支持绑定了, 并给后台提供正确的密码.
阅读全文
摘要:简单谈谈MVVM模式, 没有语法层面的东西, 仅谈谈自己的理解.
阅读全文
摘要:其实SendKeys类提供的方法蛮好用的,可惜的是WPF中不能用了,说是WPF的消息循环方式改成了Dispatcher,所以直接调用System.Windows.Forms.SendKeys.Send()方法会报错. 不过没关系, 至少有use32的SendInput可用,通过P/Invoke方式,我们可以模拟键盘或鼠标操作.
阅读全文