您的位置: 首页 - 站长

vps如何创建网站外贸seo软件

当前位置: 首页 > news >正文

vps如何创建网站,外贸seo软件,网站数据库问题,小程序是做什么的WPF—常用控件、属性、事件、详细介绍 WPF#xff08;Windows Presentation Foundation#xff09;是微软推出的基于Windows 的用户界面框架#xff0c;属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架#xff0c;真正做到了分离界面设计人员与开发人…WPF—常用控件、属性、事件、详细介绍 WPFWindows Presentation Foundation是微软推出的基于Windows 的用户界面框架属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架真正做到了分离界面设计人员与开发人员的工作同时它提供了全新的多媒体交互用户图形界面。 本篇就为大家分享一下WPF中常用的控件和属性以及事件的详细介绍非常适合初学者和复习者。 本篇包含WPF四十七个控件以及属性和事件的介绍包含控件的数据绑定自定义数据模版控件模版等知识点。 目录 WPF—常用控件、属性、事件、详细介绍 WPF常用控件 单标签和双标签

  1. label文本
  2. button按钮
  3. textbox输入文本 常用事件
  4. border 元素四周绘制边框和/或背景。 常用属性
  5. ToolBarTray 任务栏 常用属性
  6. Toolbar 工具栏 常用属性
  7. image 显示图片 Source 显示图片的路径
  8. Frame 用于承载页面 常用属性 常用事件 Frame窗体跳转
  9. checkbox 复选框 常用属性 常用事件
  10. RadioButton 单选框 常用属性 常用事件 可以通过groupName设置相同值进行分组 可以将多个单选框添加到一个父标签下
  11. Calendar日历 常用属性 常用事件 获取选择的日期
  12. DatePicker 选择日期框 常用属性
  13. combobox 下拉框 常用属性 常用事件 自定义子选项 C#添加数据操作 获取选中的值
  14. ComboBoxItem 设置下拉框内容的标签 实例
  15. StackPanel 将子元素排列成水平或垂直的一行 常用属性
  16. TabControl 选项卡
  17. TabItme 设置选项卡内容的标签 常用属性
  18. Grid 网格区域
  19. Grid.ColumnDefinitions 网格布局 列
  20. Grid.RowDefinitions 网格布局 行
  21. ColumnDefinition 设置网格布局 列 的区域 常用属性
  22. RowDefinition 设置网格布局 行 的区域 常用属性
  23. WrapPanel 换行panel 常用属性
  24. textBlock 显示文本 标签内容和Text属性共存的 常用属性
  25. lineBreak 换行标签
  26. ListBox 选项列表 常用属性 自定义子选项 listbox数据绑定
  27. ListBoxItem 给选项列表添加静态选项的标签
  28. GroupBox分组盒子表示一个控件该控件用于创建具有用户界面 (UI) 内容边框和标题的容器。 常用属性
  29. ScrollViewer 滚动条标签 常用属性 30 ToolTip 当鼠标移入输入框显示提示信息(该标签只能当做子标签或属性使用) 使用方法
  30. RichTextBox 富文本: 编辑小型文档和文本段落的控件 富文本中的子控件
  31. Run 包含一连串格式化或非格式化文本的内联级别流内容元素 使用
  32. DataGrid 数据网格(表格) 可以显示的数据 常用属性 表格的用法 自定义单元格 设置表头局部样式 设置单元格局部样式 表头全局样式 单元格全局样式 设置单元格为按钮 表格设计和表格数据绑定 添加表格数据 删除表格数据
  33. Expander折叠栏 常用属性 实例:
  34. Menu 菜单标签 菜单操作 自定义菜单 设置图标 使用菜单 树形数据绑定
  35. MenuItem 设置菜单标签的标题 实例
  36. Hyperlink 超链接 常用属性 使用实例
  37. ContextMenu 右键菜单 实例 树形属性模版
  38. Canvas 定义一个区域可在其中使用相对于 Canvas 区域的坐标以显式方式来定位子元素。 常用属性 实例
  39. DockPanel 定义一个区域从中可以按相对位置水平或垂直排列各个子元素。 常用属性 布局时常用的属性(用在子控件上的) 实例:
  40. ProgressBar 进度条 常用属性
  41. TreeView 竖向菜单 常用事件 标签布局 动态数据绑定树形数据模版
  42. Ellipse 绘制椭圆形
  43. Path 制一系列相互连接的直线和曲
  44. Rectangle 矩形标签(一般用于动画)
  45. UniformGrid 提供一种在网格(网格中的所有单元格都具有相同的大小)中排列内容的方法。 常用属性
  46. ListView 表示用于显示数据项列表的控件。 WPF常用属性 WindowStartupLocation 获取或设置窗体首次显示的位置 WindowStyle 获取或设置窗口的边框样式 name 组件名称 height 高度 Content 标签文本 HorizontalAlignment 水平对齐 VerticalAlignment 竖值对齐 HorizontalContentAlignment 文本水平内容排列 VerticalContentAlignment 垂直内容排列 Padding 内边距 Margin 外边距 FontSize 字体大小 FontStyle 字体样式 Foreground 字体颜色 Fontweight 字体粗细 FontFamily 字体字形(比如楷体) FontStretch 设置字体在屏幕上紧缩或加宽的程度 Background 背景颜色 BorderThickness 边框大小 BorderBrush 边框背景 SelectionBrush 选定的文本的颜色 CornerRadius 边框拐角的弧度 Source 显示路径 DisplayDate展示的日期– SelectedDate选着的日期– DisplayDateStart 展示日期的起始时间– DisplayDateEnd 展示日期的结束时间– IsEditable 文本是否编辑(值: ture/false) IsReadOnly 是否为只读属性(值: ture/false) Header 设置选项卡内容标题 ShowGridLines 是否显示网格布局分割线(值: true/false) Grid.Row 设置标签在网格布局中的行数 Grid.Column 设置标签在网格布局中的列数 Orientation 设置排列标签的排列方式(StackPanel ) ItemsSource 设置动态绑定数据 SelectionMode 设置listbox标签一次选中多少个数据 Template 用于调用自定义模版的键 Header 设置标题 Visibility 该标签是否显示 Opacity 设置标签的透明度 Panel.ZIndex 设置组件的Z轴(标签在屏幕上的显示顺序) value 用于获取进度条进度 Maximum 进度条最大值 Minimum 进度条最小值 WPF常用事件 事件类型 一. 生命周期事件 二. 常用的键盘事件 三. 常用的鼠标事件 五. 多点触控事件 其他 WPF常用控件 单标签和双标签 !–Button/ 单标签– !–Button/Button 双标签– 1. label文本 2. button按钮 3. textbox输入文本 常用事件 TextChanged 输入框发生变化时触发的事件 4. border 元素四周绘制边框和/或背景。 border不能有多个子元素 常用属性 CornerRadius 设置边框弧度 5. ToolBarTray 任务栏 常用属性 Orientation 修改工具栏排列方向 默认为水平排列 6. Toolbar 工具栏 常用属性 Band 控制工具栏不再是同一行/列 如果band值相等 多个toolbar会在同一行/列 BandIndex 索引 当控制栏在同一行时 可以用BandIndex来决定谁在前面 7. image 显示图片 Source 显示图片的路径 img.Source new BitmapImage(new Uri(C:\Users\86152\Desktop\WPF\WPF练习\05 轮播图\img\ Items[–County] .jpg)); 小提示: 如果使用绝对路径的话需要修改图片属性 将属性复制到输出目录属性改为 始终复制 将生成操作属性改为 内容 8. Frame 用于承载页面 常用属性 NavigationUIVisibility Visible属性 显示出一个自动记录前进后退导航 Source 页面路径(下列是参数) Source在frame控件中用于接收网络页面路径和窗体页面 接收网络页面 Sourcehttps://ilive.lenovo.com.cn/?fstee 接收窗体页面 Source../Pages/MyPage.xaml C#实现 : // 参数1: 路径 参数2: 网址的类型(相对路径/绝对路径)this.f1.Source new Uri(https://www.768145989.html,UriKind.Absolute); 常用事件 LoadCompleted 页面加载完毕后触发的事件 Frame窗体跳转 // 1 第一种使用frame的source属性进行跳转 // new uri(网址,网址的类型包含绝对路径和相对路基) this.f1.Source new Uri(https://www.7kzww7.com/20/20716/68145989.html,UriKind.Absolute); // 2 第二种跳转方式使用Navigate进行跳转 this.f1.Navigate(new Uri(https://c.biancheng.net/csharp/)); // 3 使用Navigate跳转到自己的页面 Pages/MyPage.xaml MyPage p new MyPage(); // 创建页面对象 this.f1.Navigate(p); // 4 第三种跳转方式 使用Navigate跳转页面并且传参 MyPage p1 new MyPage(); this.f1.Navigate(p1,张三); // 参数1 跳转的页面对象 | 参数2 传递参数 // 参数可以在页面的加载完毕的事情中取出参数 在上面f1_LoadCompleted函数中取出张三的值// 使用LoadCompleted事件取出参数 : // 网页加载完成之后触发 private void f1_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e) {// e.ExtraData;取出页面的参数列如张三 object obj e.ExtraData; if (obj ! null) { MessageBox.Show(网页加载完毕: obj); } } // 4 第三种跳转方式 使用Navigate跳转页面并且使用构造函数传参 // (1) 先在page页面cs文件中创建构造函数 public partial class Page1 : Page { public Page1() { InitializeComponent(); }// this 调用上面的Pagel方法 public Page1(string s): this() { l1.Content s; } } // (2) 然后在窗体cs文件中进行页面跳转 Page1 p1 new Page1(牛牛); // 当创建对象时利用构造函数进行传参 this.fra.Navigate(p1); 9. checkbox 复选框 常用属性 content 标题 获取选中状态 check.IsChecked 常用事件 Unchecked 复选框为false时调用 Checked 复选框为true时调用 click 点击事件 10. RadioButton 单选框 常用属性 获取选中状态 check.IsChecked 常用事件 Unchecked 复选框为false时调用 Checked 复选框为true时调用 click 点击事件 可以通过groupName设置相同值进行分组 RadioButton GroupNamesex Content男 / RadioButton GroupNamesex Content女 / 可以将多个单选框添加到一个父标签下 Grid Nameg2 RadioButton Content男 / RadioButton Content女 / /Grid 11. Calendar日历 常用属性 SelectionMode选中日历类型(下列是属性) SingleDate 只能选一个日期 SingleRange 单个范围 MultipleRange 多个范围 DisplayDate展示的日期 SelectedDate选着的日期 DisplayDateStart 展示的起始时间 DisplayDateEnd 展示的结束时间 常用事件 SelectedDatesChanged 选择日历后触发 获取选择的日期 // 使用空间name属性调用SelectedDate MessageBox.Show(c1.SelectedDate.ToString()); // 2 通过findName方法查询元素 Calendar c (Calendar)this.FindName(c1); // 查询name属性为c1的组件 MessageBox.Show(c.SelectedDate.ToString()); 12. DatePicker 选择日期框 常用属性 DisplayDate展示的日期– SelectedDate选着的日期– DisplayDateStart 展示的起始时间– DisplayDateEnd 展示的结束时间– 13. combobox 下拉框 常用属性 IsEditable 文本是否编辑(值: ture/false) (当iseditable等于true时下拉框为白色) IsReadOnly 是否为只读属性(值: ture/false) Text默认值 常用事件 SelectionChanged 下拉框选项发生改变时触发 自定义子选项 自定义子选项(固态数据) ComboBox Width100 Height50 ComboBoxItemStackPanel OrientationHorizontal Button1111/Button Label222/Label /StackPanel /ComboBoxItem /ComboBox 自定义子选项(动态数据) ComboBox Width100 Height50 ItemsSource{Binding list} ComboBox.ItemTemplate DataTemplate Button Content{Binding name}/Button /DataTemplate /ComboBox.ItemTemplate /ComboBox C#添加数据操作 // 1 使用items属性进行添加 this.c1.Items.Add(贺钓帝); this.c1.Items.Add(冰心); this.c1.Items.Add(周树人); // clear();清空属性 this.c1.Items.Clear();// 2 使用datacontext进行绑定 // 班级模型类 public class StudentClass { public int StudentId { get; set; } public string Name { get; set; } } ListStudentClass values new ListStudentClass(); values.Add(new StudentClass() { StudentId 1, Name 软件1班, }); // 需要再标签上添加数据绑定 ItemsSource{Binding} this.c1.ItemsSource values; // 设置数据源 this.c1.DisplayMemberPath Name; // 设置显示成员 this.c1.SelectedValuePath StudentId; // 获取selectvalue值获取的是selectedvaluePath的值 获取选中的值 // 获取selectvalue值获取的是selectedvaluePath的值 c1.SelectedValue 14. ComboBoxItem 设置下拉框内容的标签 实例 ComboBoxItem饮食/ComboBoxItem 15. StackPanel 将子元素排列成水平或垂直的一行 常用属性 Orientation 排列方式(下列属性) Horizontal水平排布 Vertical 垂直排布 16. TabControl 选项卡 17. TabItme 设置选项卡内容的标签 常用属性 Hrader 设置标题 content 设置文本 18. Grid 网格区域 19. Grid.ColumnDefinitions 网格布局 列 20. Grid.RowDefinitions 网格布局 行 21. ColumnDefinition 设置网格布局 列 的区域 常用属性 width 设置列的宽度 (将值设为*是平分 22. RowDefinition 设置网格布局 行 的区域 常用属性 height 设置列的高度 (将值设为*是平分 23. WrapPanel 换行panel 标签介绍: 当子元素的宽度或者高度超出了父元素才进行换行。高度超出父元素的高度 也会另起一列 常用属性 Orientation 排列方式 Horizontal水平排布 Vertical 垂直排布 24. textBlock 显示文本 标签内容和Text属性共存的 常用属性 TextWrapping 获取或设置 TextBlock 应如何换行文本。 25. lineBreak 换行标签 26. ListBox 选项列表 常用属性 SelectionMode 设置一次选中多少个数据(下面是属性) Extended 只能选中一个、 Multiple 可以选中多个 自定义子选项 自定义子选项(动态数据) ListBox Width100 Height50 ItemsSource{Binding list} ListBox.ItemTemplate DataTemplate Button Content{Binding name}/Button /DataTemplate /ListBox.ItemTemplate /ListBox 自定义子选项(固态数据) ListBox Width100 Height50 ListBoxItem Button Content000/Button /ListBoxItem /ListBox listbox数据绑定 // 标签布局 ListBox Namelis Height100 Width200 ItemsSource{Binding} VerticalAlignmentBottom !–自定义选项– ListBox.ItemTemplate DataTemplate Button Content{Binding}/Button /DataTemplate /ListBox.ItemTemplate /ListBox // 编辑数据并且绑定 ObservableCollectionstring list new ObservableCollectionstring() { 111,2222,22233}; lis.ItemsSource list; 27. ListBoxItem 给选项列表添加静态选项的标签 28. GroupBox分组盒子表示一个控件该控件用于创建具有用户界面 (UI) 内容边框和标题的容器。 常用属性 Header设置分组标题 29. ScrollViewer 滚动条标签 常用属性 VerticalScrollBarVisibility 设置列滚动条下面是属性 Auto自动显示当显示内容的宽与高超过所在容器的时候显示没有则不显示 Visible滚动条一直显示 Hidden隐藏滚动条 Disabled 禁止显示滚动条 HorizontalScrollBarVisibility 设置行滚动条(下面是属性) Auto自动显示当显示内容的宽与高超过所在容器的时候显示没有则不显示 Visible滚动条一直显示 Hidden隐藏滚动条 Disabled 禁止显示滚动条 30 ToolTip 当鼠标移入输入框显示提示信息(该标签只能当做子标签或属性使用) 使用方法 方法1: TextBox Width300 Height40 HorizontalAlignmentLeft VerticalAlignmentTop 当鼠标移入输入框显示提示信息 TextBox.ToolTip 23 /TextBox.ToolTip /TextBox !–方法2设置多个提示语–  Button Width100 Height40 Margin200,0,0,0 点击 Button.ToolTip StackPanel TextBlock天王盖地虎/TextBlock TextBlock宝塔镇河妖/TextBlock /StackPanel /Button.ToolTip /Button 方法3设置属性 Label Content12122 ToolTip000000/Label 31. RichTextBox 富文本: 编辑小型文档和文本段落的控件 富文本中的子控件 !–FlowDocument 是wpf中流文档。用来承载大篇文章是wpf3.0之后提出的心的基数 在该标签下 可以使用 paragraph代表一个段落 section代表一个区域 table代表一个表格. BlockUIContainer代表一个块元素。 InlineUICntainer代表一个内联元素– 32. Run 包含一连串格式化或非格式化文本的内联级别流内容元素 使用 Runy/Run InlineUIContainer Label4/Label /InlineUIContainer 33. DataGrid 数据网格(表格) 可以显示的数据 可以显示以下几种标签显示不同数据 : 显示文本: DataGridTextColumn 显示复选框: DataGridCheckboxColumn 下拉框: DataGridComboboxColumn 超链接: DataGridHyperlinkColumn– 常用属性 !–AutoGenerateColumns 是否自动生成列 设置为false不会自动生成列– !–AutoGenerateColumns 是否删除行– !–CanUserSortColums 是否允许列进行排序– !–GridLinesVisibility设置网格线– IsReadOnly 是否只读 表格的用法 自定义单元格 !–自定义单元格的模版–!–自定义列–DataGridTemplateColumn!–自定义列的标题–DataGridTemplateColumn.HeaderTextBlock编号/TextBlock/DataGridTemplateColumn.Header!–自定义单元格的模版–DataGridTemplateColumn.CellTemplateDataTemplateTextBlock Text{Binding ClassId}/TextBlock/DataTemplate/DataGridTemplateColumn 设置表头局部样式 !–表头局部样式– DataGrid.ColumnHeaderStyleStyle TargetTypeDataGridColumnHeaderSetter PropertyHorizontalAlignmentValueCenter /Setter PropertyVerticalAlignmentValueCenter /Setter PropertyBackgroundValueRed//Style /DataGrid.ColumnHe 设置单元格局部样式 !–内容局部样式– DataGridTextColumn.ElementStyleStyle TargetTypeTextBlockSetter PropertyHorizontalAlignmentValueCenter /Setter PropertyVerticalAlignmentValueCenter /Setter PropertyBackgroundValuePink //Style /DataGridTextColumn.Ele 表头全局样式 !–表头全局样式– Style x:Keysty TargetTypeDataGridColumnHeaderSetter PropertyHorizontalAlignmentValueCenter /Setter PropertyVerticalAlignmentValueCenter /Setter PropertyBackgroundValueRed / /Style// 在datagrid中调用样式的键key DataGrid FontSize18FontFamily宋体NamedataColumnHeaderStyle{StaticResource sty}单元格全局样式 !–内容全局样式– Style x:Keystyl TargetType{x:Type TextBlock}Setter PropertyHorizontalAlignment ValueCenter/SetterSetter PropertyVerticalAlignment ValueCenter/Setter PropertyBackgroundValuePink/Setter /Style// 在DataGridTextColumn中去调用样式键key DataGrid FontSize18FontFamily宋体NamedataDataGrid.ColumnsDataGridTextColumn Width130Header姓名ElementStyle{StaticResource styl}/DataGridTextColumn/DataGrid.Column 设置单元格为按钮 // 自定义表头 DataGridTemplateColumn Width130DataGridTemplateColumn.HeaderTextBlock操作/TextBlock/DataGridTemplateColumn.Header// 自定义单元格DataGridTemplateColumn.CellTemplateDataTemplate // 在单元格中设置按钮StackPanel OrientationHorizontalHorizontalAlignmentCenterVerticalAlignmentCenterButton Width40Height22Content编辑Margin5ClickButton_Click_2/ButtonButton Width40Height22Content删除Margin5ClickButton_Click_1/Button/StackPanel/DataTemplate/DataGridTemplateColumn.CellTemplate /DataGridTemplateColumn 表格设计和表格数据绑定 设计表格 // 设计表格 DataGrid FontSize18 FontFamily宋体Named1ItemsSource{Binding}AutoGenerateColumnsFalseCanUserAddRowsFalseCanUserSortColumnsFalseGridLinesVisibilityAll!–设置表头样式–!–TargetType 给表头设置样式–DataGrid.CellStyleStyle TargetTypeDataGridColumnHeaderSetter PropertyHorizontalContentAlignmentValueCenter /Setter PropertyVerticalContentAlignmentValueCenter //Style/DataGrid.CellStyle!–设置列–DataGrid.Columns!–设置表头文本列显示的数据可以通过bind进行绑定–DataGridTextColumn Header姓名 Width150Binding{Binding Name}DataGridTextColumn.ElementStyle!–行内单元格样式–Style TargetTypeTextBlockSetter PropertyHorizontalAlignmentValueCenter /Setter PropertyVerticalAlignmentValueCenter //Style/DataGridTextColumn.ElementStyle/DataGridTextColumn!–下拉框列–DataGridComboBoxColumn Header班级x:NamecomSelectedValueBinding{Binding ClassId}/DataGridComboBoxColumn!–自定义列–DataGridTemplateColumn!–自定义列的标题–DataGridTemplateColumn.HeaderTextBlock编号/TextBlock/DataGridTemplateColumn.Header!–自定义单元格的模版–DataGridTemplateColumn.CellTemplateDataTemplateTextBlock Text{Binding ClassId}/TextBlock/DataTemplate/DataGridTemplateColumn.CellTemplate/DataGridTemplat 数据绑定 数据绑定 // 设计模型类 public class Student {public string Name { get; set; } // 学生姓名public string ClassId { get; set; } // 班级编号 }public class BanJi {public string ClassName { get; set; } // 班级名称 }// 整理数据并添加 ListStudent list new ListStudent(); list.Add(new Student(){Name 迪迦,ClassId 1000}); list.Add(new Student(){Name 赵丽颖,ClassId 1002}); list.Add(new Student(){Name 普京,ClassId 1003});// 整理第二个数据源 ListBanJi list2 new ListBanJi(); list2.Add(new BanJi(){ClassName 挖机一班}); list2.Add(new BanJi(){ClassName 上位机}); list2.Add(new BanJi(){ClassName 机械视觉});this.d1.ItemsSource list; this.com.ItemsSource list2; this.com.DisplayMemberPath ClassName;// 展示班级名称 this.com.Selecte 添加表格数据 // 添加 students.Add(new Student(){Name 鲁班 000,Age 000 19 ,Sex 男,Class 989 班,Ah true }); this.data.Items.Refresh(); 删除表格数据 students.RemoveAt(data.SelectedIndex);// 获取当前选中元素 data.Items.Refresh(); // 强制更新表格 34. Expander折叠栏 常用属性 IsEnabled 默认是打开或者折叠起来true就是展开 false折叠 ExpandDirection 展开的方向 down 向下展开展开标签一般展开方向是上下不设置高度一般展开方向是左右不设置宽度 VerticalAlignment top HorizontalAlignmentCenter 展开宽随着内容进行自适应 实例: Expander IsEnabledTrue ExpandDirectionDown Width200 BorderThickness2 BorderBrushGreenVerticalAlignmentTop HorizontalAlignmentCenter!–设置标题–Expander.Header我的好友/Expander.HeaderStackPanel OrientationVerticalCheckBox IsCheckedTrue Margin0,10马云/CheckBoxCheckBox马化腾/CheckBoxCheckBox许家印/CheckBox/StackPanel35. Menu 菜单标签 菜单操作 自定义菜单 !–自定义菜单项– MenuItem!–自定义菜单项模版标签–MenuItem.Template!–ControlTemplate 控件模版 TargetType作用到哪种类型标签上–ControlTemplate TargetTypeMenuItemTextBlock NametextText原子弹管理Padding5/TextBlock/ControlTemplate/MenuItem.Template设置图标 !–FlowDirection 设置图表是从左往右还是从右往左– MenuItem Header请假管理FontFamily华文彩魏FontSize20FlowDirectionRightToLeftHeight40!–设置图标–MenuItem.IconImage SourceC:\Users\86152\Desktop\图片\wallhaven-jx16pm.jpg //MenuItem.Icon使用菜单 Menu Height40 VerticalAlignmentTopMenuItem Header出入管理FontFamily华文彩魏FontSize20Height40/MenuItem!–FlowDirection 设置图表是从左往右还是从右往左–MenuItem Header请假管理FontFamily华文彩魏FontSize20FlowDirectionRightToLeftHeight40!–设置图标–MenuItem.IconImage SourceC:\Users\86152\Desktop\图片\wallhaven-jx16pm.jpg //MenuItem.Icon!–二级菜单–MenuItem Header考勤打卡FontFamily楷体FontSize20FlowDirectionLeftToRightHeight40/MenuItem/MenuItem!–自定义菜单项–MenuItem!–自定义菜单项模版标签–MenuItem.Template!–ControlTemplate 控件模版 TargetType作用到哪种类型标签上–ControlTemplate TargetTypeMenuItemTextBlock NametextText原子弹管理Padding5/TextBlock/ControlTemplate/MenuI 树形数据绑定 《–标签布局–》 Menu VerticalAlignmentTop Height40 ItemsSource{Binding}HorizontalContentAlignmentCenterx:NameMenMenu.ItemTemplateHierarchicalDataTemplate DataType{x:Type e:MEN}ItemsSource{Binding MenList}Label Content{Binding Name}MouseDownLabel_MouseDown/Label/HierarchicalDataTemplate/Menu.ItemTemplate /Menu《–设置模型类–》 public class MEN {public string Name { get; set; }public ListMEN MenList { get; set; }public MEN(string n1, MEN? MenList1){Name n1;if (MenList1 ! null){ListMEN list MenList1.MenList ?? new ListMEN();list.Add(this);MenList1.MenList list;}} }《–绑定数据–》 public MainWindow() {InitializeComponent();ListMEN NumList new ListMEN(); // 总数据// 一级菜单MEN m1 new MEN(娱乐,null);MEN m2 new MEN(体育,null);MEN m3 new MEN(练习, null);// 练习的二级菜单MEN m31 new MEN(练习21,m3);MEN m32 new MEN(练习22,m3);// 练习22的三季菜单MEN m321 new MEN(练习321, m32);// 绑定数据NumList.Add(m1);NumList.Add(m2);NumList.Add 36. MenuItem 设置菜单标签的标题 实例 MenuItem Header出入管理 FontFamily华文彩魏 FontSize20 Height40 /MenuItem 37. Hyperlink 超链接 常用属性 NavigateUri 连接路径 使用实例 // 标签布局 Hyperlink NavigateUrihttps://ilive.lenovo.com.cn/?fstee ClickHyperlink_Click00000 /Hyperlink// 设置点击事件在点击事件里设置跳转方式 private void Hyperlink_Click(object sender, RoutedEventArgs e) {Hyperlink hy (Hyperlink)sender;var psi new ProcessStartInfo{// 设置跳转的方式以绝对的方式进行跳转FileName hy.NavigateUri.AbsoluteUri,// 使用powershell终端进行跳转UseShellExecute true,};Process.Sta 38. ContextMenu 右键菜单 实例 !–右键菜单– Label Content右键弹出内容菜单FontSize30Label.ContextMenuContextMenu Namec1MenuItem Header111/MenuItem/ContextMenu/Label.ContextMenu树形属性模版 !–右键菜单– // 设置标签布局 Label Content右键弹出内容菜单FontSize30Label.ContextMenuContextMenu Namec1ItemsSource{Binding}ContextMenu.ItemTemplateHierarchicalDataTemplate ItemsSource{Binding SubMenus}TextBlock Text{Binding Name}/TextBlock/HierarchicalDataTemplate/ContextMenu.ItemTemplate/ContextMenu/Label.ContextMenu /Label!–在cs文件中设置数据绑定 // 设置模型类 public class Menu {// 属性结构模型定义的方法public ListMenu SubMenus { get; set; } // 存储下层的数据的list对象public string Name { get; set; } // 存储标题// 使用构造函数给属性赋值public Menu(string name,Menu?m1){Name name;if (m1 !null){ListMenu list m1.SubMenus ?? new ListMenu();list.Add(this);m1.SubMenus list;}} }public Window右键菜单() {InitializeComponent();ListMenu list new ListMenu(); // 总类集合// 一级菜单Menu dudian new Menu(断电, null);// 二级菜单Menu dudian2_1 new Menu(插入断电, dudian);Menu dudian2_2 new Menu(插入跟踪断电, dudian);// 只用添加一级菜单就可二级菜单一级添加到一级菜单的集合中 list.Add(dudian);// 将数据绑定到Context 39. Canvas 定义一个区域可在其中使用相对于 Canvas 区域的坐标以显式方式来定位子元素。 常用属性 定位元素 不要设置两个相对的距离例如设置了Canvas。Right就不要设置Canvas.Left Canvas.Right0 距离canvas右边的距离是0 Canvas.left0 距离canvas左边的距离是0 Canvas.top0 距离canvas上边的距离是0 Canvas.Bottom0 距离canvas下边的距离是0 实例 Canvas Width500 Height300StackPanel Width100Height100BackgroundRed/StackPanel /Canvas 40. DockPanel 定义一个区域从中可以按相对位置水平或垂直排列各个子元素。 常用属性 LastChildFill 最后一个表情是否铺满剩余空间 布局时常用的属性(用在子控件上的) DockPanel.DockLeft 用于控制标签排列到那个方向top,bottom,left,right 实例: DockPanel BackgroundRed LastChildFillTrueButton DockPanel.DockLeft Width50 BackgroundGreen2222/ButtonButton DockPanel.DockLeftWidth50BackgroundBlack/ButtonDockPanel DockPanel.DockTopBackgroundPink/DockPanel /Do 41. ProgressBar 进度条 常用属性 !–Value 进度条当前进度– !–Minimum 进度条最小值– !–Maximum 进度条最大值– !–Orientation 进度方向– !–Foreground 进度条颜色– !–Background 背景颜色– 42. TreeView 竖向菜单 常用事件 SelectedItemChanged 当选择子项发生改变的时候触发 标签布局 TreeView !–静态数据绑定 TreeViewItem 子项–TreeViewItem Header实验小学TreeViewItem Header二年级TreeViewItem Header三班/TreeViewItem/TreeViewItem/TreeViewItem /T 动态数据绑定树形数据模版 // 1. 设置标签布局 TreeView ItemsSource{Binding name}Namet2!–子项绑定是其中的一个对象的属性–TreeView.ItemTemplate!–树形数据模版–HierarchicalDataTemplate ItemsSource{Binding SubMenus}!–绑定子集标题–TextBlock Text{Binding Name}/TextBlock/HierarchicalDataTemplate /TreeView.ItemTemplate /TreeView// 2 创建模型类 public class MenuInfo {public string Name { get; set; }public ListMenuInfo SubMenus { get; set; }public MenuInfo(string n,MenuInfo?m1){Name n;if (m1 ! null){if (m1.SubMenus is null) m1.SubMenus new ListMenuInfo();m1.SubMenus.Add(this);}}public MenuInfo(){} }// 3 设置数据和绑定数据 // 设置数据 MenuInfo m1 new MenuInfo() {// 一级标题Name 誓言小学,// 存放子级标题对象SubMenus new ListMenuInfo(){// 二级标题new MenuInfo() {Name 一年级,SubMenus new ListMenuInfo(){// 三级标题new MenuInfo(){Name 一班}} },new MenuInfo() {Name 二年级},new MenuInfo() {Name 三年级},new MenuInfo() {Name 四年级},new MenuInfo() {Name 五年级},} }; // 绑定数据 ListMenuInfo list new ListMenuInfo 43. Ellipse 绘制椭圆形 44. Path 制一系列相互连接的直线和曲 45. Rectangle 矩形标签(一般用于动画) 46. UniformGrid 提供一种在网格(网格中的所有单元格都具有相同的大小)中排列内容的方法。 常用属性 Rows 设置网格的行数 Columns 设置网格的列数 47. ListView 表示用于显示数据项列表的控件。 WPF常用属性 WindowStartupLocation 获取或设置窗体首次显示的位置 WindowStyle 获取或设置窗口的边框样式 name 组件名称 height 高度 Content 标签文本 HorizontalAlignment 水平对齐 C# f1.HorizontalAlignment HorizontalAlignment.Center VerticalAlignment 竖值对齐 C# f1.VerticalAlignment VerticalAlignment.Center; HorizontalContentAlignment 文本水平内容排列 C# f1.HorizontalContentAlignment HorizontalAlignment.Center; VerticalContentAlignment 垂直内容排列 C# f1.VerticalContentAlignment VerticalAlignment.Center; Padding 内边距 2个参数顺序: 左、上 4参数顺序: 左上右下 Margin 外边距 2个参数顺序: 左、上 4参数顺序: 左上右下 C# this.qiu.Margin new Thickness(10,0,0,0); FontSize 字体大小 FontStyle 字体样式 Foreground 字体颜色 C# l.Foreground Brushes.Pink; Fontweight 字体粗细 FontFamily 字体字形(比如楷体) FontStretch 设置字体在屏幕上紧缩或加宽的程度 Background 背景颜色 C# this.nn.Background Brushes.Red; // 设置三原色 l1.Background new SolidColorBrush(Color.FromRgb(1,2, 2)); // 带透明度的四元色 l1.Background new SolidColorBrush(Color.FromScRgb(1,2, 2,1)); C#判断背景颜色是否为红色 if (this.nn.Background Brushes.Red ) { this.nn.Background Brushes.Pink; } BorderThickness 边框大小 C# myBorder1.BorderThickness new Thickness(5, 10, 15, 20); BorderBrush 边框背景 C#          b.BorderBrush Brushes.Red; SelectionBrush 选定的文本的颜色 CornerRadius 边框拐角的弧度 当宽高是一样的时候 并且设置CornerRadius为一半的时候边框为圆 Source 显示路径 C# img.Source new BitmapImage(new Uri(C:\Users\05 轮播图\ Items[–County] .jpg),UriKind.Absolute); // 参数1 路径 参数2 路径方式 : (相对路径UriKind.Relative | 绝对路径UriKind.Absolute) 小提示: 如果使用绝对路径的话需要修改图片属性 将属性复制到输出目录属性改为 始终复制 将生成操作属性改为 内容 DisplayDate展示的日期– SelectedDate选着的日期– DisplayDateStart 展示日期的起始时间– DisplayDateEnd 展示日期的结束时间– IsEditable 文本是否编辑(值: ture/false) 当iseditable等于true时下拉框为白色 IsReadOnly 是否为只读属性(值: ture/false) Header 设置选项卡内容标题 ShowGridLines 是否显示网格布局分割线(值: true/false) Grid.Row 设置标签在网格布局中的行数 C# // 参数1是标签参数2是行数 Grid.SetRow(l1, y); Grid.Column 设置标签在网格布局中的列数 C# // 参数1是标签参数2是列数 Grid.SetColumn(l1, x); Orientation 设置排列标签的排列方式(StackPanel ) ItemsSource 设置动态绑定数据 演示 ItemsSource{Binding} SelectionMode 设置listbox标签一次选中多少个数据 Extended 只能选中一个、 Multiple 可以选中多个 Template 用于调用自定义模版的键 演示 Template{StaticResource c1} Header 设置标题 Visibility 该标签是否显示 C# this.ss.Visibility Visibility.Visible; Opacity 设置标签的透明度 默认不透明度为 1.0。 值应介于 0.0 和 1.0 之间。 Panel.ZIndex 设置组件的Z轴(标签在屏幕上的显示顺序) value 用于获取进度条进度 Maximum 进度条最大值 Minimum 进度条最小值 WPF常用事件 事件类型 事件类型 生命周期事件元素初始化加载或卸载时发生的事件 鼠标事件操作使用鼠标动作触发的事件。 键盘事件操作使用键盘触发的事件。 手写笔事件使用触控笔出发事件。 多点触控事件类似触控屏多位置点击事件。 一. 生命周期事件 Load:整个窗口加载完成时触发的事件 Activated:当用户切换到该窗口时发生的事件值得注意的是窗体第一次加载时也会触发该事件。 Deactivated:当用户从该窗口切换到其他窗口时发生事件。值得注意的是窗体关闭时也会触发该事件。该事件在Closing事件之后发生但是在Closed事件之前发生。 Closing:窗体关闭时发生无论是用户关闭还是调用Window.Close()方法或者Application.Shutdown()方法关闭窗体都会触发 Close:窗体关闭后事件注意此时仍然可以访问元素对象。可以做一些清理工作或者注册表写东西。 LoadCompleted 网页加载完成之后触发 ContentRendered 当窗体的内容完成渲染后触发。 二. 常用的键盘事件 KeyDown:按下一个键时发生 KeyUp按键释放时发生 TextInput:按键完成并且元素接收输入文本时发生对于不会产生文本输入的按键如Ctrl,Shift等不会发生 常用的获取键盘状态的方法 IsKeyDown():判断是否按下了指定按键 IsKeyUp():是否释放了指定按键 IsKeyToggled():指定按键是否处于打开状态如Caps Lock等 三. 常用的鼠标事件 MouseLeftButtonDown:鼠标左单击按下事件 MouseLeftButtonUp:鼠标左单击释放事件 MouseRightButtonDown:鼠标右单击按下事件 MouseRightButtonUp:鼠标右单击释放事件 MouseEnter 鼠标移入 MouseEnter 鼠标移开 五. 多点触控事件 PreviewTouchDown 当用户触摸元素时发生 TouchDown 当用户触摸元素时发生 PreviewTouchMove 当用户移动放到触摸屏上的手指时发生 TouchMove 当用户移动放到触摸屏上的手指时发生 PreviewTouchUp 当用户移开手指结束触摸时发生 TouchUp 当用户移开手指结束触摸时发生 TouchEnter 当触点从元素外进入元素内时发生 TouchLeave 当触点离开元素时发生 其他 click 点击事件 Unchecked 复选框为false时调用 Checked 复选框为true时调用 TextChanged 输入框发生变化时触发的事件 SelectionChanged 下拉框选项发生改变时触发 ScrollChanged 当ScrollViewer标签滚动视图发生变化时触发 本篇文章到此结束转载请附上原创网址谢谢