摘要:
项目中有一个已经绑定好的treeview ,需求是,根据过滤条件A,把不满足条件A的节点过滤掉,如果节点不满足条件,但叶子节点满足条件,该节点保留,节点不满足条件,该节点下的叶子节点也不满足条件,该节点和叶子节点都过滤掉。算法是:到序遍历每一个树节点(先遍历叶子节点),如果节点是叶子节点,检查条件,不满足移除。关键代码: 1 /// <summary> 2 /// 移除叶子节点 3 /// </summary> 4 /// <returns></returns> 5 private void RemoveNode(... 阅读全文
摘要:
本文介绍的是分页控件的改进,引用dukey's的发布的控件 ,详细见原文:http://www.cnblogs.com/dukey/archive/2011/08/09/2132187.html原文控件使用有两个问题:1,首次绑定的时候,不显示总页数和当前页数,需要点击一下按钮才显示,2,控件中的"上一页",“下一页”等按钮布局在不同宽度下显示不够友好,效果如下图:针对第一个问题,仔细看了原作者的源码,发现初次绑定的时候,没有给显示总记录数的lable赋值,于是,在取得总记录数后就给显示记录的控件的Text属性赋值,改进后的代码如下所示,第8行后是我添加进来的, 1 阅读全文
摘要:
先看效果图,上图是绑定后的样子,窗体界面代码: 1 <DataGrid Name="FileDataGrid" AutoGenerateColumns="False" Height="150" CanUserAddRows = "false"> 2 <DataGrid.Columns> 3 <DataGridTemplateColumn Header="文件名" Width="200*" IsReadOnly="True"&g 阅读全文
摘要:
在四月份在和一个朋友合伙接了一个软件项目,项目的基本功能 是:用户做好每个员工的工资表明细,给每一个员工发送工资表邮件。用户要求,要实现项目高度灵活,通用,易于扩展,接下来经过一个月的时间折腾,实现项目所要求的基本功能。最终的结果是,界面差强人意都不够,勉强实现功能,没有架构,也不便扩展,自己做的东西,自己都不满意,更谈不上客户显认可。以此为背景,切合自己的实际谈谈对小型项目管理的看法,欢迎大家拍砖,抛砖引玉吧。首先来谈一下经验教训。一, 结合自身的技术功能,合理提出项目的目标,是保证项目顺利完成的前提。把用户的需求分类,满足用户的基本需求,满足用户提出的一到两个兴奋需求。一开始,我 们的目标 阅读全文
摘要:
添加功能,就是做一个建立一个新的实例,然后这个实例绑定到各个控件上面,点击提交按钮的时候,提交按钮的命令command注册到一个添加的方法.整个流程就是:建一个新的实例,添加按钮绑定AddCommond, AddCommand在ViewModel里注册一个添加新实例的方法,删除一个实例,和添加实例一样首先要绑定DeleteCommand绑定到删除按钮,然后DeleteCommand在ViewModel里注册一个删除方法,与添加不一样的是:删除需要传递参数,删除实例通过<ButtonContent="删除"Height="37"Margin=&quo 阅读全文
摘要:
关于MVVM模式概念就不讲了,网上一大堆,而且超详细。 先描述一下整体解决方案:把服务器信息从服务器端取出来显示在客户端,Model层负责取数据并序列化成对象,ViewModel负责绑定到View,效果图:Model层负责数据实体Server实现INotifyPropertyChanged接口,当属性改变时通知界面。1#regionip2privatestring_ip;34publicstringIP5{6get{return_ip;}7set8{9if(_ip!=value)10{11_ip=value;12OnPropertyChanged("IP");13}14}1 阅读全文
摘要:
前一段时间有个项目调用到外协单位的一个web服务,公布的方法和返回值都是json字符串,返回结果让我困拢了很久。返回结果:{"dataList":"[{\"HH\":\"5001314065\",\"HM\":\"602斯群慧\",\"COUNT(*)\":\"1\"},{\"HH\":\"5001301296\",\"HM\":\"宁波广厦物业管理有限公司\",\& 阅读全文
摘要:
SLVisifire控件用图表来显示数据,深受欢迎,我支持版权,对于工资不高的那些童鞋来说,几百美元也是一个不小的数目呀,但无奈阆中羞涩,只好用免费的啦,又不想显示水印,只好想办法了,很多人都是利用摭罩的办法,定位到水印显示的地方,建立一个比水印差不多大小的控件,正好摭住水印,显示成背景色,这一种办法,下面介绍另一种办法,简单的,直接就是继承Chart重写LoadWatermark()方法就可以了,先上效果图对比一下吧,未继承Chart效果图:改进后的效果图:显然,水印已经不存在了,下面上代码了,首先,新建一个类,继承自Chart,重写LoadWatermark方法,1publicclassM 阅读全文
摘要:
在Web开发中要保持风格样式的一致性,在asp.net中做法是提取样式,写在一个CSS文件中,在web页面中添加对这个样式的引用,在此要说的是Silverlight中做法,稍有些不同,第一步,建立样式文件,并添加到Assets文件夹中,如图所示第二步,在App.xaml文件中指定样式文件路径1<Application.Resources>2<ResourceDictionary>3<ResourceDictionary.MergedDictionaries>4<ResourceDictionarySource="Assets/Styles.x 阅读全文
摘要:
首先介绍一下复合层次的定义:利用 WCF RIA Services,您可以为属于复合层次结构的数据类创建应用程序逻辑,这些层次结构包含由“具有”关系关联的类,其中包含对象(整体或父)控制着被包含对象(部分或子代)的创建和生命周期。例如,SalesOrderHeader实体具有 SalesOrderDetail 实体,因为有关订单的详细信息只作为订单的一部分存在。为了阐明这一点,可以对照类的子类型化来看类的组件:子类型化包括通过给比较宽泛的类型(交通工具)添加详细信息来创建比较具体的类型(小轿车)。这样就会导致在继承层次结构中详细(派生)类仍可被视为泛型(基)类,因为从这个例子来看,小轿车“(仍 阅读全文