摘要:
Excel c# oledb 阅读全文
随笔档案-2011年04月
跟着小王学习wpf之十三 自定义Element
2011-04-04 01:01 by Wang_top, 610 阅读, 收藏,
摘要:
首先。如果放到以前这应该这里应该叫做自定义控件,但是问题是wpf中element和控件还有一定的区别。面对设计一个新的element的时候,我们首先第一个问题就是这个类需要继承于FrameworkElement还是contorl.Control类有FrameworkElement所不具有的很多的属性,比如backgroud,foreground等。class SimpleEllips:FrameworkElement { protected override void OnRender(DrawingContext drawingContext) { //base.OnRender(drawi 阅读全文
跟着小王学习wpf之十二 Wpf中的鼠标事件详解
2011-04-04 00:58 by Wang_top, 2045 阅读, 收藏,
摘要:
Uielement和ContentElement都定义了十个以Mouse开头的事件,8个以PreviewMouse开头的事件,MouseMove,PreviewMouseMove,MouseEnter,Mouseleave的事件处理器类型都是MouseEventHandler类型。这些事件都具备对应得MouseEventargs对象。(没有pre的enter和leave)。当鼠标穿过一个Element时,mousemove会发生很多次,但是mouseenter和mouseleave只会发生一次,分别在鼠标进入element区域以及离开element区域是发生。UIElement和Content 阅读全文
跟着小王学习wpf之路由事件
2011-04-04 00:56 by Wang_top, 1047 阅读, 收藏,
摘要:
先看一个下测试程序View Code class ExmapleRouteEvents : Application { static readonly FontFamily fontfam = new FontFamily("Lucida Console"); const string strFormot = "{0,-25}{1,-25}{2,-25}{3,-25}"; StackPanel stackoutput; DateTime dtlast; [STAThread] static void Main(string[] args) { Exmap 阅读全文
跟着小王学习wpf系列之十一 依赖属性一
2011-04-04 00:46 by Wang_top, 397 阅读, 收藏,
摘要:
下面我们来解释一个重要的概念,依赖属性(DependencyProperty)。依赖属性测试public MyWindow() { Title = "Test Dependency Property"; SizeToContent = SizeToContent.WidthAndHeight; ResizeMode = ResizeMode.CanMinimize; FontSize = 16; double[] fnsixe = { 8, 16, 32 }; Grid grid = new Grid(); Content = grid; for (int i = 0; i 阅读全文
跟着小王学习wpf系列之十 练习之拼图游戏
2011-04-04 00:38 by Wang_top, 644 阅读, 收藏,
摘要:
下面是一个典型的游戏程序:移动所有的拼图知道拼成目标图形。拼图游戏 class MyWindow:Window { const int NumberRow = 4; const int NumberColumn = 4; UniformGrid unigrid; int xempty, yempty, icounter; Key[] keys = { Key.Left, Key.Right,Key.Up, Key.Down}; Random rand; UIElement emptyspare = new Empty(); [STAThread] static void Main(string 阅读全文
跟着小王学习wpf系列之九 Canvas
2011-04-04 00:36 by Wang_top, 756 阅读, 收藏,
摘要:
下面来讨论下一个控件:CanvasCanvas是一个具有指定摆放位置的控件,当你将其他子控件摆放进Canvas中的时候,需要指定这个子控件相对于Canvas的位置,所以一般情况下对于Canvas我们也指定大小。(width,height)。设定控件在Canvas中的位置,和grid中设定方式比较相似,你需要使用静态SetLeft,SetTop等来设定距离Canvas边界的距离(单位为无设备无关的长度单位)。如果你将一个控件加入到Canvas中一般他会自己根据你的设定自己调整,但是对于Shape类,他们一般都有严格的尺寸。你必须指定好。让Canvas上的子控件之间相互层叠也是很有用的,在其他控件 阅读全文
跟着小王学习wpf之八 Grid
2011-04-04 00:34 by Wang_top, 631 阅读, 收藏,
摘要:
下面我们来讨论一个另一个布局控件:Grid。Grid和以上我们看到的其他布局控件有些不同,首先他只用来布局,它也许是最有用的布局控件:他可以随意的列数和行数:每列的行高可以通过以下方式来确定:1:设定一个固定的长度值2:设定为这一行中所有子元素中最高的那个元素的行高。3:设定为剩余空间的高度。列宽也是如此规则。public MyWindow() { Title = "WrapPanel box"; Grid grid = new Grid(); Content = grid; grid.ShowGridLines = true; RowDefinition rowdef = 阅读全文
跟着小王学wpf系列之 常用控件布局控件
2011-04-04 00:31 by Wang_top, 924 阅读, 收藏,
摘要:
控件之Stack在wpf中,继承与ContentContorl的控件都具有Content属性,可以设置为另一个控件或者字符串等。一般来说这个对象不是字符串就是继承与Uielement的类的实例。问题在于content只能设置一个对象,对于一个窗口来说这远远不够,因此wpf针对这个问题,设计了几个控件,这些控件的父类都是panel(面板),而将控件和其他element对象放置在面板上的方法,称之为layout(布局)。比较重要的几个panel类及其继承关系。对于传统的windows窗口来说上面的控件都有精确地尺寸和位置,但是在wpf中,layout(动态布局)是很常用的。所谓动态布局,是指根据不 阅读全文
跟着小王学wpf之六 常用控件TextBox
2011-04-04 00:27 by Wang_top, 441 阅读, 收藏,
摘要:
Textbox虽然textbox含有内容,但是它一般不被认为是ContentContorl,因为他的内容一定是文字,它具有一个text属性,让你设定内容的文字。因为textbox继承与Contorl所有可以设置前景画刷和背景画刷字型等,但是他所有的字的格式都是一样的。Richtextbox则可以有多重状态的显示,他俩之间的区别就相当于记事本和word之间的区别一样。下面我们建立一个程序来使用textbox:class MyDiolog:Window { TextBox txt; public MyDiolog() { Title = "Enter a URI"; ShowI 阅读全文
跟着小王学wpf系列之五 Button
2011-04-04 00:25 by Wang_top, 601 阅读, 收藏,
摘要:
wpf中的buttonclass MyWindow:Window { public MyWindow() { Title = "Sharp of Button"; Button btn = new Button(); btn.Content = "Click me please!"; btn.Click += new RoutedEventHandler(btn_Click); Content = btn; } void btn_Click(object sender, RoutedEventArgs e) { MessageBox.Show(" 阅读全文
跟着小王学wpf系列之四 内容
2011-04-04 00:23 by Wang_top, 496 阅读, 收藏,
摘要:
六:内容的概念(Content)Window类有100多个属性,最重要的一个属性就是Content.他表示这个window要显示的内容的集合。因为这个Content是一个object类型,所有你可以把任何东西交给他,然后让window显示。(不能将这个内容设置为一个window对象)。 class MyWindow:Window { public MyWindow() { Content = "Test Content"; } }在窗口的左上角点,会显示出Test Content。 如果相对输出的内容进行一些其他的调整该怎么办? class MyWindow:Window 阅读全文
跟着小王学习wpf系列三 颜色和画刷
2011-04-04 00:20 by Wang_top, 771 阅读, 收藏,
摘要:
WPF中的颜色Wpf中颜色被封装成一个结构Color,还是使用三原色来表示一个颜色。除了RGB这个三元色的基本属性之外,Color还包含一个A属性,表示透明度。值越小表示越透明,当255时表示不透明,0表示完全透明。 Color cir = new Color(); cir.A = 255; cir.R = 255; cir.G = 0; cir.B = 255;当然你也可以使用一下方法来获得一个color对象。Color cir = Color.FromRgb(255, 0, 255);Color cir = Color.FromArgb(255, 255, 0, 255);一般的相机,显示 阅读全文
跟着小王学习wpf系列二 基本的wpf程序架构
2011-04-04 00:17 by Wang_top, 551 阅读, 收藏,
摘要:
一个wpf程序由以下几个元素组成:wpf Main[STAThread] static void Main(string[] args) { MyAppLication myapp = new MyAppLication(); myapp.Run(); }MyAppLication定义:MyAppLicationclass MyAppLication:Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); MyWindow mywin = new MyWindow(); m 阅读全文
跟着小王学wpf系列一 WPF窗口
2011-04-04 00:10 by Wang_top, 1265 阅读, 收藏,
摘要:
一:wpf应用程序和窗口在vs2008开始创建一个项目的时候,系统默认的给我们一下各种选择:表明我们可以直接选择一个WPF应用程序来开始开发。但是这样就失去认识WPF本质的机会了。所有我们先从一个控制台应用程序开始。我们手动的在这个控制台程序中添加了一下几个引用:(因为WPF程序需要这几个引用)定义一个WPF中的窗口,然后显示他: 运行这个程序: Window win = new Window(); win.Show();发现跑出一个异常:所有要将这个程序的Main函数上添加上STA特性。View Code using System;//引入System.Windows名字空间using Sy 阅读全文
浙公网安备 33010602011771号