随笔分类 -  C#-WPF

摘要:一、说明 Paragraph继承自Block,Block继承自TextElement,在TextElement中 通过获取ContentStart点和ContentEnd点之间的内容,获取段落内容:TextRand.Text 实例代码: 阅读全文
posted @ 2016-10-03 16:10 天马3798 阅读(3950) 评论(0) 推荐(1)
摘要:一、查找xaml中命名注册的元素 二、查找后台代码命名注册的元素 后台添加方式 注释:元素名称Name注册, 不能重复。 以下内容转载:http://www.cnblogs.com/Clingingboy/archive/2010/11/29/1891253.html 预设置元素名字 WPF有两种方 阅读全文
posted @ 2016-10-03 12:36 天马3798 阅读(7265) 评论(0) 推荐(1)
摘要:1.FindName()说明,可以用来获取已经注册名称的元素或标签 但是后台添加名称注册的方式是使用RegisterName(),而不是直接给Name赋值 举例说明: 1.直接赋值Name,无法通过FindName()查找到 2.使用RegisterName(),注册可以使用FindName()查找 阅读全文
posted @ 2016-10-03 12:22 天马3798 阅读(2565) 评论(1) 推荐(0)
摘要:注: 需要继承IMultiValueConverter接口,接口使用和IValueConverter逻辑相同。 一、MultiBinding+Converter 多值绑定及多值转换实例 当纵向流量大于横向流量时指示灯应为绿色,当纵向流量小于横向流量时指示灯应为红色,否则指示灯为黄色。 1、定制Col 阅读全文
posted @ 2016-10-02 14:20 天马3798 阅读(9068) 评论(0) 推荐(2)
摘要:WPF、Silverlight及Windows Phone程序开发中往往需要将绑定的数据进行特定转换,比如DateTime类型的时间转换为yyyyMMdd的日期,再如有一个值是根据另外多组值的不同而异的,此时我们就需要定制自己的Converter。 .Net Framework提供了两种Conver 阅读全文
posted @ 2016-10-02 14:09 天马3798 阅读(36621) 评论(2) 推荐(5)
摘要:1.Wpf中鼠标捕获和释放 2.Wpf中在定位布局Canvas下获取或设置元素的位置 在指定元素的鼠标事件中例如,MouseLeftButtonDown,MouseLeftButtonUp,MouseMove获取当前鼠标相对于Canvas 的位置,以及位置操作 3.拖动实例代码: 阅读全文
posted @ 2016-09-28 16:17 天马3798 阅读(4733) 评论(1) 推荐(0)
摘要:1、实例: 说明:当TextBox控件的Text内容发生变化时,TextChanged事件触发,并且会立即同步执行。 基于这个特点,设置一个全局变量标识,ChangeTxtB,如果是正在修改txtB的时候,不执行txt_TextChanged事件内容。 这样就可以解决TextChanged事件带来的 阅读全文
posted @ 2016-08-14 17:16 天马3798 阅读(4022) 评论(2) 推荐(0)
摘要:在Wpf中界面显示数据的修改,都是通过UI线程完成,如果尝试从其他线程中直接修改控件的值回抛出异常,“调用线程无法访问此对象,因为另一个线程拥有该对象”。 例如:http://www.cnblogs.com/tianma3798/p/5762016.html 解决方案1:通过Invoke或者Begi 阅读全文
posted @ 2016-08-12 22:53 天马3798 阅读(1959) 评论(0) 推荐(0)
摘要:1.使用定时器异步修改 这是相对比较简单的方法 在Wpf中定时器使用DiapatcherTimer,不使用Timer原因: 在一个应用程序中,Timer会重复生成time事件,而DispatcherTimer是一个集成到了Dispatcher队列中的时钟,这可以使它被按照指定的时间间隔以指定的pri 阅读全文
posted @ 2016-08-12 21:49 天马3798 阅读(6943) 评论(0) 推荐(0)
摘要:说明: msdn中 ObservableCollection<T> 类 表示一个动态数据集合,在添加项、移除项或刷新整个列表时,此集合将提供通知。 在许多情况下,所使用的数据是对象的集合。 例如,数据绑定中的一个常见方案是使用 ItemsControl(如 ListBox、ListView 或 Tr 阅读全文
posted @ 2016-08-12 16:49 天马3798 阅读(7461) 评论(0) 推荐(4)
摘要:Wpf中双向绑定处理需要两处 实例1: 1.前台Xaml中属性Binding 时Model指定 TwoWay 2.后台绑定的数据上线文实现INotifyPropertyChanged(向客户端发出某一属性值已更改的通知。)接口 显示结果: 实例2:使用Wpf的双向绑定机制,可以实现多线程修改UI 注 阅读全文
posted @ 2016-08-12 16:25 天马3798 阅读(20274) 评论(0) 推荐(0)
摘要:1.Wpf 多线程修改UI示例: 解决方案:使用Dispatcher.BeginInvoke+委托方式,修改UI 将修改UI的代码封装在委托中 阅读全文
posted @ 2016-08-11 18:04 天马3798 阅读(20088) 评论(0) 推荐(3)
摘要:1.简单示例: TextBox按照预期的,显示了完整的英文星期,但是Label的格式没有任何改变。我们用了完全一样的Binding和格式字符串,区别究竟在什么地方?如果够细心的话可以发现,TextBox的Binding是在Text属性上进行的,而Label的Binding是在Content属性上进行 阅读全文
posted @ 2016-08-11 09:56 天马3798 阅读(5430) 评论(0) 推荐(0)
摘要:BindingBase.StringFormat 属性获取或设置一个字符串,该字符串指定如果绑定值显示为字符串,应如何设置该绑定的格式。 StringFormat 可以是预定义的、撰写的或自定义的字符串格式。有关字符串格式的更多信息,请参见.NET Framework 中的格式化类型。 如果设置 C 阅读全文
posted @ 2016-08-11 09:27 天马3798 阅读(3853) 评论(0) 推荐(0)
摘要:Binding.Path 获取或设置绑定源属性的路径。 每个绑定通常都具有四个组件:绑定目标对象、目标属性、绑定源,以及要使用的绑定源值的路径。有关这些数据绑定概念的更多信息,请参见数据绑定概述。 使用 Path 属性可以指定您要绑定到的源值: 在最简单的情况下,Path 属性值是要用于绑定的源对象 阅读全文
posted @ 2016-08-10 16:47 天马3798 阅读(11364) 评论(0) 推荐(1)
摘要:1.简单DataContext绑定 Xaml代码: 显示结果: 2.使用MultiBinding,将多个值绑定同一属性 后台基本同上 Xaml代码: 显示结果: 阅读全文
posted @ 2016-08-10 16:43 天马3798 阅读(684) 评论(0) 推荐(0)
摘要:简介:1.WPF绑定使用的源属性必须是依赖项属性,这是因为依赖项属性具有内置的更改通知支持,元素绑定表达式使用了Xaml扩展标记, WPF绑定一个控件是使用Binding.ElementName, 绑定非控件对象时使用Source,RelativeSource,DataContext属性(WPF特有 阅读全文
posted @ 2016-08-10 16:38 天马3798 阅读(976) 评论(0) 推荐(0)
摘要:1.使用ListBox绑定Dictionary字典数据 ListBox常用事件SelectionChanged Xaml 2.使用字典集合单项绑定,ListBox.ItemTemplete模板 后台同上 Xaml定义: 显示结果: Wpf控件ListBox使用实例2 阅读全文
posted @ 2016-08-10 10:28 天马3798 阅读(9909) 评论(0) 推荐(0)
摘要:2.Xaml绑定选择结果 3.绑定ListBox.Templete 模板内容 /// <summary> /// List3.xaml 的交互逻辑 /// </summary> public partial class List3 : Window { public List3() { Initia 阅读全文
posted @ 2016-08-10 10:10 天马3798 阅读(7093) 评论(0) 推荐(0)
摘要:一.在Windows窗口中使用 1.点击链接使用系统默认游览器打开 2.配置默认HyperLink链接样式 定义样式资源 使用资源 显示结果: 二、在Page或Iframe中使用 阅读全文
posted @ 2016-06-04 16:56 天马3798 阅读(13594) 评论(5) 推荐(1)