WPF常用知识点
2016-05-19 19:26
211 查看
Xaml中添加后台代码
Binding中的显示更新到源或UI
获取某一依赖属性的binding
StringFormat使用
没有特殊文本时,需要添加额外的大括号:StringFormat= {}{0 : MMdd}
字符渲染 http://www.wpf-tutorial.com/control-concepts/text-rendering/
WPF中有两个属性是用来控制字符渲染的,分别为TextOptions.TextFormattingMode和TextOptions.TextRenderingMode,分别定义字符串如何转换及在控件级别渲染,一般不需要定义,根据实际情况处理
BitmapToBitmapSource
碰撞测试
可用于获取特定位置所有的可视控件或特定组件
获取具有焦点的控件
FocusManager .GetFocusedElement(this)
获取鼠标下面的元素
Mouse.DirectlyOver as UIElement
WPF中右键菜单及Tooltip由InputManager控制,与鼠标右键点击的事件没有特定的关联关系
Binding中的显示更新到源或UI
BindingExpression binding = tb.GetBindingExpression(TextBox. TextProperty); binding.UpdateSource();//将UI上的值更新到后台数据 binding.UpdateTarget();//将后台数据更新到UI
获取某一依赖属性的binding
var binding= BindingOperations.GetBinding(tb, TextBox.TextProperty);
StringFormat使用
< TextBlock Text="{ Binding Source={ x:Static system: DateTime.Now },StringFormat= Date:{0 :MMdd}} " VerticalAlignment= "Top" Width="120"/>
没有特殊文本时,需要添加额外的大括号:StringFormat= {}{0 : MMdd}
字符渲染 http://www.wpf-tutorial.com/control-concepts/text-rendering/
WPF中有两个属性是用来控制字符渲染的,分别为TextOptions.TextFormattingMode和TextOptions.TextRenderingMode,分别定义字符串如何转换及在控件级别渲染,一般不需要定义,根据实际情况处理
BitmapToBitmapSource
public BitmapSource ToBmpSrc(Bitmap bitmap) { var ms = new MemoryStream(); bitmap.Save(ms, ImageFormat.Bmp); ms.Position = 0; ms.Seek(0, SeekOrigin.Begin); var bi = new BitmapImage(); bi.CacheOption = BitmapCacheOption.OnLoad; bi.BeginInit(); bi.StreamSource = ms; bi.EndInit(); return bi; }
碰撞测试
可用于获取特定位置所有的可视控件或特定组件
void PreTest() { Point pt = Mouse .GetPosition(this); VisualTreeHelper.HitTest(this , OnFilter, OnResult, new PointHitTestParameters (pt)); } /// <summary> /// filter some uielement /// </summary> /// <param name="o"></param> /// <returns></returns> private HitTestFilterBehavior OnFilter(DependencyObject o) { if (o is Border) return HitTestFilterBehavior .ContinueSkipSelf; return HitTestFilterBehavior .Continue; } private HitTestResultBehavior OnResult(HitTestResult o) { Console.WriteLine(o.VisualHit.ToString()); return HitTestResultBehavior .Continue; }
获取具有焦点的控件
FocusManager .GetFocusedElement(this)
获取鼠标下面的元素
Mouse.DirectlyOver as UIElement
WPF中右键菜单及Tooltip由InputManager控制,与鼠标右键点击的事件没有特定的关联关系
相关文章推荐
- PAT (Advanced Level) 1027. Colors in Mars (20)
- Mysql五种时间格式
- 过滤器模式(Filter Pattern)
- 世界上最伟大的推销员
- DP入门---饭卡
- getopts
- Android Studio出现 app:transformClassesWithJarMergingForDebug的解决办法
- 深入super,看Python如何解决钻石继承难题
- javascript的理解及经典案例
- Java之二 面向对象
- java成员变量与局部变量修饰符的区别
- Java之二 面向对象
- Java之二 面向对象
- 读书笔记《浪潮之巅》
- JAVA温习:WebService和RESTful的区别
- 组合模式(Composite Pattern)
- 在Linux中分别安装应用于不同平台的QT:PC;嵌入式X86;ARM。
- 因为安迪的一句话,这2万5千人凭空多出9亿财富!_财经_腾讯网
- git 本地和远程github冲突问题解决
- android开发不可不知的UI知识