2014年2月27日

WPF MenuItem 四种角色分析

摘要: MenuMenu的样式很简单,就是顶部的那个框,如下图而其中的文字“文件”“图形”...是属于MenuItem的,要灵活使用MenuItem,就需要了解MenuItem.Role的作用TopLevelItem没有子菜单,直接执行命令TopLevelHeader能够弹出子菜单SubmenuItem没有子菜单,直接执行命令SubmenuHeader能够弹出子菜单你们可别小看这几个东西,要研究清楚还是要费点时间的MenuItem.Role是个只读属性,是系统根据当前样式来设置的,如果我们要完整的控制整个菜单的样式,那么这些样式都要实现,那我们就来理解上面分别属于那些部分先说TopLevelHeade 阅读全文

posted @ 2014-02-27 21:33 软件部 阅读(5425) 评论(0) 推荐(0) 编辑

2014年2月14日

自定义的 ListBoxItem 自适应ListBox的宽度

摘要: 主要是要设置HorizontalContentAlignment的值,而不是HorizontalAlignment @thl 2014年2月14日 13:55:24 阅读全文

posted @ 2014-02-14 13:57 软件部 阅读(2638) 评论(0) 推荐(0) 编辑

2014年1月28日

由DataGridTextColumn不能获取到父级DataContext引发的思考

摘要: 在项目中使用DataGrid需要根据业务动态隐藏某些列,思路都是给DataGrid中列的Visibility属性绑定值来实现(项目使用MVVM),如下如果不是在DataGridTextColumn上绑定,那么这段代码是可以工作的,问题出在DataGridTextColumn上,我们来看它的继承层次它不是FrameworkElement的派生类,所以它不具有DataContext属性,也就是说,即使DataGrid有DataContext,DataGridTextColumn也不能得到它,Visibility找不到DataContext自然绑定不上,这就是为什么上面的绑定失效的原因,同样其他.. 阅读全文

posted @ 2014-01-28 21:46 软件部 阅读(2152) 评论(2) 推荐(1) 编辑

2014年1月7日

GDI+中发生一般性错误的解决办法(转帖)

摘要: 今天在开发.net引用程序中,需要System.Drawing.Image.Save 创建图片,debug的时候程序一切正常,可是发布到IIS后缺提示出现“GDI+中发生一般性错误”的异常。于是开始“摆渡”,并寻找到了解决办法:赋予 NETWORK SERVICE 帐户以写权限。以下为晚上寻找到的资料:在开发.NET应用中,使用 System.Drawing.Image.Save 方法而导致“GDI+ 中发生一般性错误”的发生,通常有以下三种原因:1. 相应的帐户没有写权限。解决方法:赋予 NETWORK SERVICE 帐户以写权限。2. 指定的物理路径不存在。解决方法:在调用 Save 方 阅读全文

posted @ 2014-01-07 12:11 软件部 阅读(323) 评论(0) 推荐(0) 编辑

2013年12月28日

WPF中RadioButton绑定数据的正确方法

摘要: RadioButton一般用于单选的时候,也就是从一组值中选择一个值。比如性别有“男”和“女”两种取值,而对于一个员工的实例来说,性别的取值要么是男,要么是女。这种时候一般就会用到RadioButton。RadioButton有一个IsChecked属性用于表示是否选中,IsChecked属性的值类型是bool,只能直接绑定bool类型的值。然而对于大多数时候来说,这种多选一的值我们一般会采用枚举等类型。比如性别我们会定义如下的枚举: public enum Sex { Male, Female }对于员工类,我们作如下定义: public ... 阅读全文

posted @ 2013-12-28 16:50 软件部 阅读(30930) 评论(8) 推荐(4) 编辑

2013年12月26日

C# 使用XML序列化对象(二)

摘要: 在C# 使用XML序列化对象(一)中描述了使用XML序列化对象的最简单的实现。现在我们来看看稍微复杂一点的情况:现有两个类:A和B,B是A的派生类,如下所示: public class A { public int a { get; set; } } public class B : A { public int b { get; set; } }如果使用C# 使用XML序列化对象(一)中... 阅读全文

posted @ 2013-12-26 01:00 软件部 阅读(1624) 评论(0) 推荐(0) 编辑

C# 使用XML序列化对象(一)

摘要: 在System.Xml.Serialization命名空间中提供了XML序列化类XmlSerializer用于将对象序列化为XML。下面看一个最简单的例子: public class A { public int a { get; set; } } public string XmlSerialize(T obj) { XmlSerializer xs = new XmlSerializer(typeof(T)); using (TextWriter ... 阅读全文

posted @ 2013-12-26 00:29 软件部 阅读(1544) 评论(0) 推荐(0) 编辑

2013年12月23日

WPF中RadioButton的分组

摘要: 当界面上出现多组Radiobutton时,将所有的Radiobutton写在同一个Grid里面,导致系统认为所有的Radiobutton是同一组,造成选择混乱,解决的方法:1.要为属于同个组的Radiobutton设置相同的GroupName,绑定同一个变量;2.若没有为Radiobutton设置GroupName,则将属于同一组的Radiobutton放在一个容器中,如wrappannel里面。通常为Radiobutton设置转化器,将不同的button上对应的值,与选中与不选中进行转换,下面展示例子,示例中有三种转换器:EnumToBoolConverter,IntToBoolConver 阅读全文

posted @ 2013-12-23 21:03 软件部 阅读(15146) 评论(0) 推荐(1) 编辑

2013年12月20日

C#的默认访问修饰符

摘要: Classes and structs that are not nested within other classes or structs can be either public or internal. A type declared as public is accessible by any other type. A type declared as internal is only accessible by types within the same assembly. Classes and structs are declared as internal by defau 阅读全文

posted @ 2013-12-20 15:01 软件部 阅读(488) 评论(0) 推荐(0) 编辑

2013年12月18日

WPF中资源引用方式汇总

摘要: 在WPF应用程序开发中,总是难以记住各种访问资源的方法,遂逐一记下。 先从资源是否编译到程序集分类 一.程序集资源 资源在编译的时候嵌入到程序集中。WPF中的XAML会被编译为BAML,图片等其他资源均被编译到程序集中AssemblyResources.g.resources中 为了能够成功使用程序集资源,需要注意一下两点:资源的Build Action必须是Resource,不复制到输出目录。不要在Project Properties中使用Resource选项卡,WPF不支持这种类型的资源URI。 使用资源 可以在XAML中使用如下方式使用资源 ... 阅读全文

posted @ 2013-12-18 15:15 软件部 阅读(12008) 评论(0) 推荐(1) 编辑

导航