自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 WPF的画笔

使用视觉对象进行绘制 VisualBrush使用对象绘制区域 Visual。

2022-11-30 19:21:54 187 1

原创 WPF几何绘图(3)

路径标记语法实际上就是各种线段的简记法

2022-11-21 19:02:47 463

原创 WPF几何绘图(2)

(4)、QuadraticBezierSegment (二次贝塞尔曲线段)与BezierSegment类似

2022-11-11 10:54:55 645

原创 WPF几何绘图(1)

路径(Path)可以说是WPF绘图中最强大的工具

2022-11-02 19:20:00 507

原创 WPF形状绘图

Brush是个抽象类,所以我们不可能拿一个Brush类的实 例为Fill属性赋值而只能用Brush派生类的实例进行赋值。6:VisualBrush:WPF中的每个控件都是由FrameworkElement类派生来的,而 FrameworkElement又是由Visual类的方法获得。Stroke(笔触)属性的数据类型是Brush(画刷),凡是Brush的派生类均可用于给这个属性 赋值。直线是最简单的图形。使用X1、Y1两个属性可以设置它的起点坐标,X2、Y2两个属 性则用来设置其终点坐标。

2022-10-19 19:08:35 165

原创 样式的分类

2022-10-10 19:41:31 463

原创 Style样式设置器

Trigger,触发器,主要作用是根据Trigger的不同条件(基本、多条件、数据、多数 据条件、事件)来自动更改外观属性,或者执行动画等操作。事件 一般是由用户操作触发的。上面这个例子中包含一个针对CheckBox的Style,当CheckBox的IsChecked属性为 true的时候前景色和字体会改变。上面的例子中针对TextBlock的Style,Style中使用 若干Setter来设定TextBlock的一些属性。Setter,设置器,我们给属性赋值的时候一般都采用“属 性名=属性值”的形式。

2022-09-28 19:40:52 281

原创 WPF的路由事件

Handled 属性的目的在于,允许路由中的任何事件处理程序通过将 Handled 的值设 置为 true 来将路由事件标记为“已处理”。例如,MouseDown事件就是一个冒泡路由事件。它首先被单击 的元素触发,接下来就是该元素的父元素触发,依此类推,直到WPF到达元素树的顶部为止。实现定义:路由事件是一个 CLR 事件,可以由 RoutedEvent 类的实例提供支持并由 WPF事件系统来处理。功能定义:路由事件是一种可以针对元素树中的多个侦听器(而不是仅针对引发该事 件的对象)调用处理程序的事件。

2022-09-19 19:34:31 1358

原创 XAML的属性

某些元素的属性支持内容元素语法,允许忽略元素的名称,实例对象会根据XAML元素中的第一个标记值来设置属性,对于大量的格式化文本,使用内容元素语法更加灵活,属性标记之间可以插入大量的文本内容。对于对象元素的某些属性,无法使用特性语法,因为无法在特性语法的引号和字符串限 制内充分地表达提供属性值所必需的对象或信息。每个属性对应一个属性值,属性值类型必须与属性匹配,一个标记中可以设置对象的多个属性,只有实例化对象才可以设置实例属性。元素支持一个属性元素的集合,才使用集合语法进行设置属性。2:使用属性元素语法。

2022-09-08 16:31:31 79

原创 WPF栈式面板

对于StackPanel我们基本上是用上述的属性和对StackPanel的停靠方式进行设置后,即可满足布局的要求。(2):HorizontalAlignment,决定内部元素水平方向的对齐方式。(3):VerticalAlignment,决定内部元素竖直方向的对齐方式。(1):Orientation,决定内部元素是横向累积还是纵向累积。StackPanel就是将控件按照行或列来顺序排列,但不会换行。垂直排列时,每个元素都与面板一样宽。水平排列时,每个元素都与面板一样高。...

2022-08-28 19:45:51 149

原创 泊靠式面板

默认情况下,后添加的元素只能使用剩余空间,无论对DockPanel的最后一个子元素设置任何停靠值,该子元素都将始终填满剩余的空 间。如果不希望最后一个元素填充剩余区域,可以将DockPanel属性LastChildFill设置为false,还必须为最后一个子元素显式指定停靠方向。DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。DockPanel会对每个子元素进行排序,并将根据指定的边进行停靠,多个停靠在同侧的元素则按顺序排序。

2022-08-22 19:29:47 81

原创 Grid网格

第三种,比例长度——*表示占用剩余的全部宽度;两行都是*,将平分剩余宽度;像上面的一个2*,一个*,表示前者2/3宽度。网格,我们可以自定义行和列。然后通过对行列的数量、行高、列宽来调整布局。在Grid网格进行编辑,我们要清楚找到位置,而这个索引一般从0开始。第一种,固定长度——宽度不够,会裁剪,不好用。Grid.Row代表的是行,Grid.Column代表的是列。第二种,自动长度——自动匹配列中最长元素的宽度。在网格中,有几种高度、宽度的定义方式。上图是进行跨列操作。...

2022-08-10 20:50:11 129

原创 Attr()与prop()

attr():attr() 方法设置或返回被选元素的属性和值。当该方法用于返回属性值,则返回第一个匹配元素的值。当该方法用于设置属性值,则为匹配元素设置一个或多个属性/值对。

2022-06-19 19:33:27 127

原创 C#的继承

继承是面向对象程序设计中最重要的概念之一。继承允许根据一个类来定义另一个类,这使得创建和维护应用程序变得更容易.

2022-06-08 20:32:44 846

原创 数据表格中金额计算

在layui中,有一个数据表格的功能,对于此,我们可以自定义表头,也可以自定义分页。以下是一张数据表格设置图以及效果图,这个分页有需要就可开启。在上图中,我有需求,我需要获取数据表格中的所有数据的金额并将它们全部相加,以此获取它的总金额。我的做法是以在控制器中查询显示在数据表格中所有数据时便进行相加。在数据表格中显示数据首先要查询数据。而在查询多表数据时,有些表数据并不相连,这时就需要创建一个类,用于接收数据。由于上图中的“小计”在表中并不存在。于是我便在这个类中创建一个。

2022-05-29 19:58:52 215

原创 C#类的定义

类的定义是以关键字 class 开始,后跟类的名称。类的主体,包含在一对花括号内。下面是类定义的一般形式:类的成员函数是一个在类定义中有它的定义或原型的函数,就像其他变量一样。作为类的一个成员,它能在类的任何对象上操作,且能访问该对象的类的所有成员。成员变量是对象的属性(从设计角度),且它们保持私有来实现封装。这些变量只能使用公共成员函数来访问。C#中的构造函数类的构造函数是类的一个特殊的成员函数,当创建类的新对象时执行。构造函数的名称与类的名称完全相同,它没有任何返回类型。

2022-05-18 19:13:45 2274

原创 C#结构体

在 C# 中,结构体是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构体。 定义结构体为了定义一个结构体,我们必须使用 struct 语句。struct 语句为程序定义了一个带有多个成员的新的数据类型。例如下图,我们按照如下的方式声明 Book 结构:上图的程序演示了结构的用法。当上面的代码被执行是,会产生下列的结果:结构的特点1:结构可带有方法、字段、索引、属性、运算符方法和事件。2:结构可定义构造函数,...

2022-05-08 15:31:01 481

原创 C#循环与判断

在我们编写代码的时候,我们往往要多次执行同一块代码。一般情况下,语句是按顺序执行的。然而在编程语言中,循环语句允许我们多次执行一个语句或语句组。 循环类型在C#中,它提供了以下几种循环类型。 循环类型 描述 While循环 当给定条件为真时,重复语句或语句组。它会在执行循环主体之前测试条件 For/foreach循环 多次执行一个语句序列,简化管理循环变量的代码。 ..

2022-04-28 20:31:24 384

原创 C#的数组

数组是一个存储相同类型元素的固定大小的顺序集合。数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合。声明数组变量并不是声明 number0、number1、...、number99 一个个单独的变量,而是声明一个就像 numbers 这样的变量,然后使用 numbers[0]、numbers[1]、...、numbers[99] 来表示一个个单独的变量。数组中某个指定的元素是通过索引来访问的。所有的数组都是由连续的内存位置组成的。最低的地址对应第一个元素,最高的地址对应最后一个元素。

2022-04-20 19:58:50 438

原创 C#类型转换

C#是一门强类型语言,对类型要求比较严格,但是在一定条件下也是可以相互转换的。C#允许使用两种转换方式,一种是隐式类型转换,另一种是显式类型转换。1:隐式类型转换 隐式类型转换是C#默认的以安全方式进行的转换,不会导致数据丢失。它主要是在整形、浮点型之间的转换,将存储范围小的数据类型直接转换成存储范围大的数据类型。以下是隐式数值转换: sbyte short,int,long,float,double,decimal byte...

2022-04-07 19:57:39 1150

原创 C#的方法

方法:一个方法是吧一些相关的语句组织在一起,用来执行一个任务的语句块。每一个C#程序至少有一个带有Main方法的类。而要使用一个方法,我们需要先定义方法并调用这个方法。在C#中,定义方法的语句在上图中Access Specifier:访问修饰符,这个决定了变量或方法对于另一个类的可见性。Return type:返回类型,一个方法可以返回一个值。返回类型是方法返回的值的数据类型。如果方法不返回任何值,则返回类型为 void。Method name:方法名称,是.

2022-03-28 19:09:51 178

原创 SOLServer数据库-表连接

在数据库中,往往是有很多个表组成,而数据就分布在这些表中。但我们想找的数据有时候并不在一个表中,这个时候就需要将两张或多张表连接起来查找需要的数据。1:内连接在表查询中,内连接一般是使用最多的。用于查询两个或多个相关表的数据。INNER JOIN:这是内连接的关键字,也就是语法。以上是自己做的小案例:在s1和s2表中查询数据From子句指定的是主表 INNER JOIN 子句连接的是第二个表。而相互关联的列是以主表所拥有的数据去匹配次表中相同列中的数据。2:左连接左连接...

2022-03-17 16:56:50 760

原创 SQL Server的数据排序

在SQL Server中,最基础的就是数据查询,而要从中查询数据,则要使用SELECT语句。在上面的图片中,select是要指定查询表的列名,而from则是表示这些列名来自于哪张源表。在处理select语句中,SQL Server首先是要处理from子句,然后处理select子句。然而,在使用select查询数据中,并不能保证结果集中的行顺序。能使结果集中的行已排序的方法是使用order by子句。在上图,order by之后是需要进行排序的列。如果有多个列名,则按第一列排序,然

2022-03-09 20:32:46 923

原创 C#多态性

C#多态性:多态是同一个行为具有多个不同表现形式或形态的能力。多态性意味着有多重形式。在面向对象编程范式中,多态性往往表现为"一个接口,多个功能"。多态性可以是静态的或动态的。在静态多态性中,函数的响应是在编译时发生的。在动态多态性中,函数的响应是在运行时发生的。在 C# 中,每个类型都是多态的,因为包括用户定义类型在内的所有类型都继承自 Object。多态就是同一个接口,使用不同的实例而执行不同操作现实中,比如我们按下 F1 键这个动作:如果当前在 Flash

2021-10-12 10:14:47 79

原创 C#程序结构

一个 C# 程序主要包括以下部分:- 命名空间声明(Namespace declaration)- 一个 class- Class 方法- Class 属性- 一个 Main 方法- 语句(Statements)& 表达式(Expressions)- 注释using System;namespace HelloWorldApplication{class HelloWorld{ static void Main(string[] args).

2021-10-12 10:11:05 107

原创 C#封装与接口

封装封装: 被定义为"把一个或多个项目封闭在一个物理的或者逻辑的包中"。在面向对象程序设计方法论中,封装是为了防止对实现细节的访问。抽象和封装是面向对象程序设计的相关特性。抽象允许相关信息可视化,封装则使开发者*实现所需级别的抽象*。C# 封装根据具体的需要,设置使用者的访问权限,并通过 **访问修饰符** 来实现。一个 **访问修饰符** 定义了一个类成员的范围和可见性。C# 支持的访问修饰符如下所示:- public:所有对象都可以访问;- private:对象本

2021-10-12 10:06:34 1005

原创 C#数据类型

在 C# 中,变量分为以下几种类型:- 值类型(Value types)- 引用类型(Reference types)- 指针类型(Pointer types)## 值类型(Value types)值类型变量可以直接分配给一个值。它们是从类 System.ValueType中派生的。值类型直接包含数据。比如 int、char、float,它们分别存储数字、字符、浮点数。当您声明一个 int类型时,系统分配内存来存储值。引用类型(Reference types..

2021-10-12 10:01:26 48

原创 C#的常量

常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。常量可以被当作常规的变量,只是它们的值在定义后不能被修改。整数常量整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。这里有一些

2021-08-28 21:47:49 122

原创 C# 变量

一个变量只不过是一个供程序操作的存储区的名字。在 C# 中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局。范围内的值可以存储在内存中,可以对变量进行一系列操作。我们已经讨论了各种数据类型。C# 中提供的基本的值类型大致可以分为以下几类: 类型 举例 整数类型 sbyte、byte、short、ushort、int、uint、long、ulong 和 char 浮点型 fl..

2021-08-28 21:35:21 56

原创 Javascript事件

一、Javascript 事件1:鼠标事件 属性 描述 onclick 当用户点击某个对象时调用的事件句柄。 oncontextmenu 在用户点击鼠标右键打开上下文菜单时触发 ondblclick 当用户双击某个对象时调用的事件句柄。 onmousedown 鼠标按钮被按下。 onmo

2021-08-08 08:29:32 45

原创 动画、动画过渡transition

keyframes(关键帧) 计算机动画术语, 帧--就是动画中最小单位的单幅影像画面,相当于电影胶片 上的每一格镜头。在动画软件的时间轴上帧表现为一格或一个标记。 关键帧——相当于二维动画中的原画。指角色或者物体运动或变化中的关键动作 所处的那一帧。关键帧与关键帧之间的动画可以由软件来创建,叫做过渡帧或者 中间帧。其类似于 Flash 中的关键帧。在 CSS3 中其主要以“@keyframes” 开头,后面紧跟着是动画名称加上一对花括号“{…}”,括号中就是一些不同时 间段样式规则。关键帧的创建:.

2021-08-08 08:21:07 215

原创 transform

--transform属性向元素应用2D或3D转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜。(1)旋转rotate(n) 旋转函数rotate(n)通过指定的角度参数使元素相对原点进行旋转; n为参数,用于设置旋转的角度,如果为正,元素相对原点中心顺时针旋转;如果为负,逆时针旋转。例:(2)扭曲skew()--元素倾斜显示,将对象以其中心位置围绕着X轴和Y轴按照一定的角度倾斜。3种使用情况: <1:skew(x,y)元素同时在水平方向和...

2021-08-08 08:13:00 204

原创 DOM(文档对象模型)

1:HTML DOM节点在HTML DOM中,每一个元素都是节点: 文档是一个文档节点 所有的HTML元素都是元素节点 所有HTML属性都是属性节点 文本插入到HTML元素是文本节点 注释是注释节点2:Document对象当浏览器载入HTML文档,它就会成为Document对象。Document对象是HTML文档的根节点。Dcoument对象使我们可以从脚本中对HTML页面中的所有元素进行访问。Document常用属性 属性...

2021-07-07 11:04:42 62

原创 Layui—参数表

创建一个table实例最简单的方式是,在页面放置一个元素,然后通过table.render()方法指定该容器。表单中有三种初始化渲染方式: 方式 机制 使用场景 方法渲染 用js方法的配置完成渲染 无需写过多的HTML,在JS中指定原始元素,再设定各项参数。 自动渲染 HTML配置,自动渲染 无需写过多JS,可专注于HTML

2021-06-28 09:52:41 763 1

原创 表单的修改

在动态表单中,修改是一个必备的功能。修改比之新增要麻烦一点。修改需要三个步骤。1:要先选中要需要修改的数据,然后弹出模态窗体。2:我们需要在模态窗体中显示原有的数据。3:我们需要将修改好的数据进行保存操作。在此之前,我们需要创建一个方法,并以双击的形式来调用这个事件。在上一篇《表单的新增与删除》中说把获取到的数据以字符串拼接的形式插入代码中。那么我们就可以在字符串拼接中插入一个双击事件并调用方法。在弹出模态窗体之前,我们需要在数据库中获取我们所选中这一行的数据,所以我们可以通过.

2021-06-19 08:11:05 826

原创 表单的新增与删除

动态表单是可以在页面上增加,修改和删除的。我们需要设置一个新增按钮,当点击它时,会弹出一个模态框,模态框中是需要新增的信息。这个“show”是弹出模态窗体,和它对应的是“hide”,关闭模态窗体。当用户填写完信息,就要将信息提交到控制器中,由控制器与数据库交接完成新增操作。在提交之前,需要将表单序列化成为一个数组,并可以给出一个检查的判断,检查客户是否漏写。我们在Models文件夹中将数据库中我们所需要的表映射过来。它会自动生成一个实体类容器的页面,在控制器中,采用实体类来与数据库交

2021-06-08 09:23:48 769

原创 数据库表单的获取与输出

设置表单,是以<table>标签开始,之后有<thead>标签和<tbody>标签,<thead>标签包含的是表单头部。<tbody>标签包含的是表单内容。在表单中,我们可以固定写死的内容,也可以动态生成表格内容。1:我们需要将数据库内容映射到开发软件中。2:映射之后需要获取到数据库内容。3:然后将获取到的内容插入到代码中并展示出来。生成所需要的内容就需要有一个存储的空间,然后去获取存放在其中的内容放到表格上。我们会把数据.

2021-06-08 09:18:36 794

原创 AJAX的用法

AJAX不是某种编程语言AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。传统的网页(不使用AJAX)如果需要更新内容,必须重载整个网页面。在AJAX中,异步回调广泛应用,异步是与同步相对的概念。同步不是指所有步骤同时运行。而是指步骤在一个流程中按顺序执行。而异步是指执行的过程不再按顺序执行,不管进程的结果继续执行下去,这样可以提高效率。异步实现: 1:运用HTML与CSS来实现页面,表达信息。 2:运用XMLHttpRequest和web服务...

2021-06-08 09:08:15 119

原创 表单提交的方法

form表单有两种属性action与method。action属性有一个值URL。它规定当提交表单时向何处放送表单数据,URL有两种值:一种绝对URL,一种相对URL。绝对URL指向其他站点(比如 src=www.baidu.com网址)。相对URL指向站点内的文件(比如 src="/控制器名称/自定义的方法")。method属性有两个值,get与post。规定用于发送form-data的HTTP方法。get与post的区别:1.GET方法是用来向服务器上获取数据,而PSOT是用来向

2021-05-26 20:17:35 8552

原创 正则表达式的方法与属性

1:字符串对象方法 方法 search() 检验与正则表达式相匹配的值,返回子串的起始位置。 match() 找到一个或者多个正则表达式的匹配。 replace() 替换与正则表达式匹配的子串。 split() 把字符串分割为字符串数组。 <1:search()使用正则表达式搜索指定值.

2021-05-26 20:04:58 217

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除