2024年C#基础 之 WinForm控件介绍_winform activecontrol,2024年最新写的太详细了

还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!

王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。

对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!

【完整版领取方式在文末!!】

93道网络安全面试题

内容实在太多,不一一截图了

黑客学习资源推荐

最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

😝朋友们如果有需要的话,可以联系领取~

1️⃣零基础入门
① 学习路线

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

image

② 路线对应学习视频

同时每个成长路线对应的板块都有配套的视频提供:

image-20231025112050764

2️⃣视频配套工具&国内外网安书籍、文档
① 工具

② 视频

image1

③ 书籍

image2

资源较为敏感,未展示全面,需要的最下面获取

在这里插入图片描述在这里插入图片描述

② 简历模板

在这里插入图片描述

因篇幅有限,资料较为敏感仅展示部分资料,添加上方即可获取👆

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

(8)Closed事件:该事件在关闭窗体时发生。

文本框类控件

2、Label 控件
1、常用属性:

(1)Text属性:用来设置或返回标签控件中显示的文本信息。

(2)AutoSize 属性:用来获取或设置一个值,该值指示是否自动调整控件的大小以完整显示其内容。取

值为 true时,控件将自动调整到刚好能容纳文本时的大小,取值为false时,控件的大小为设计时的大小。

默认值为false。

(3)Anchor 属性:用来确定此控件与其容器控件的固定关系的。所谓容器控件指的是这样一种情况:往

往在控件之中还有一个控件,例如最典型的就是窗体控件中会包含很多的控件,像标签控件、文本框等。

这时称包含控件的控件为容器控件或父控件,而父控件称为子控件。这时将遇到一个问题,即子控件与父

控件的位置关系问题,即当父控件的位置、大小变化时,子控件按照什么样的原则改变其位置、大小。Anchor属性就规定了这个原则。

对于 Anchor 属性,可以设定 Top、Bottom、Right、Left 中的任意几种,设置的方法是在属性窗口中单击Anchor属性右边的箭头,将会出现如图 9-6 的窗口,通过它可设置 Anchor 属性值。图 9-6 中选中

变黑的方位即为设定的方位控制,即图中所示的为 Left、Right、Bottom。此时,如果父窗口变化,子窗口将保证其左边缘与容器左边的距离、上边缘与容器上边的距离、底边与容器底边的距离等不变,效果如图9-7 所示。

可见随着窗体的大小变化, Label控件也会随着变
.
而不变的则是Archor中所规定的边缘与相应的父控件边缘的距离。

(4)BackColor属性:

用来获取或设置控件的背景色。当该属性值设置为 Color.Transparent 时,标签将透明显示,即背景色不再显示出来。

(5)BorderStyle 属性:用来设置或返回边框。有三种选择:BorderStyle.None 为无边框(默认),BorderStyle.FixedSingle 为固定单边框,BorderStyle.Fixed3D 为三维边框。

(6)TabIndex属性:用来设置或返回对象的Tab键顺序。

(7)Enabled 属性:用来设置或返回控件的状态。值为 true 时允许使用控件,值为 false 时禁止使用控件,此时标签呈暗淡色,一般在代码中设置。图9-8 边框效果图 另外,标签还具有Visible、ForeColor、Font等属性,具体含义请参考窗体的相应属性。

3、TextBox 控件
1、主要属性:

(1)Text属性:Text属性是文本框最重要的属性,因为要显示的文本就包含在Text属性中。默认情况下,

最多可在一个文本框中输入2048个字符。如果将MultiLine属性设置为true,则最多可输入32KB 的文本。

Text属性可以在设计时使用【属性】窗口设置,也可以在运行时用代码设置或者通过用户输入来设置。可

以在运行时通过读取Text属性来获得文本框的当前内容。

(2)MaxLength 属性:用来设置文本框允许输入字符的最大长度,该属性值为 0 时,不限制输入的字符

数。

(3)MultiLine 属性:用来设置文本框中的文本是否可以输入多行并以多行显示。值为 true 时,允许多行显示。值为false时不允许多行显示,一旦文本超过文本框宽度时,超过部分不显示。

(4)HideSelection属性:用来决定当焦点离开文本框后,选中的文本是否还以选中的方式显示,值为true,则不以选中的方式显示,值为 false将依旧以选中的方式显示。

(5)ReadOnly属性:用来获取或设置一个值,该值指示文本框中的文本是否为只读。值为 true时为只读,

值为 false时可读可写。

(6)PasswordChar 属性:是一个字符串类型,允许设置一个字符,运行程序时,将输入到 Text 的内容全部显示为该属性值,从而起到保密作用,通常用来输入口令或密码。

(7) ScrollBars属性: 用来设置滚动条模式, 有四种选择: ScrollBars.None (无滚动条), ScrollBars.Horizontal(水平滚动条),ScrollBars.Vertical(垂直滚动条),ScrollBars.Both(水平和垂直滚动条)。

注意:只有当MultiLine属性为true时,该属性值才有效。在WordWrap属性值为true时,

水平滚动条将不起作用

(8)SelectionLength属性:用来获取或设置文本框中选定的字符数。只能在代码中使用,值为0 时,表示未选中任何字符。

(9)SelectionStart属性:用来获取或设置文本框中选定的文本起始点。只能在代码中使用,第一个字符的位置为0,第二个字符的位置为1,依此类推。

(10)SelectedText 属性:用来获取或设置一个字符串,该字符串指示控件中当前选定的文本。只能在代

码中使用。

(11)Lines:该属性是一个数组属性,用来获取或设置文本框控件中的文本行。即文本框中的每一行存放

在 Lines数组的一个元素中。

(12)Modified:用来获取或设置一个值,该值指示自创建文本框控件或上次设置该控件的内容后,用户

是否修改了该控件的内容。值为true表示修改过,值为 false表示没有修改过。

(13)TextLength属性:用来获取控件中文本的长度。

(14)WordWrap:用来指示多行文本框控件在输入的字符超过一行宽度时是否自动换行到下一行的开始,

值为 true,表示自动换到下一行的开始,值为false表示不自动换到下一行的开始。

2、常用方法:

(1)AppendText方法:把一个字符串添加到文件框中文本的后面,调用的一般格式如下:

文本框对象.AppendText(str)

参数 str是要添加的字符串。

(2)Clear方法:从文本框控件中清除所有文本。调用的一般格式如下:

文本框对象.Clear()该方法无参数。

(3)Focus方法:是为文本框设置焦点。如果焦点设置成功,值为 true,否则为false。调用的一般格式如下: 文本框对象.Focus()该方法无参数。

(4)Copy方法:将文本框中的当前选定内容复制到剪贴板上。调用的一般格式如下:

文本框对象.Copy()该方法无参数。

(5)Cut方法:将文本框中的当前选定内容移动到剪贴板上。调用的一般格式如下:

文本框对象.Cut()该方法无参数。

(6)Paste方法:用剪贴板的内容替换文本框中的当前选定内容。调用的一般格式如下:

文本框对象.Paste()该方法无参数。

(7)Undo 方法:撤销文本框中的上一个编辑操作。调用的一般格式如下:

文本框对象.Undo()该方法无参数。

(8)ClearUndo方法:从该文本框的撤销缓冲区中清除关于最近操作的信息,根据应用

程序的状态,可以使用此方法防止重复执行撤销操作。调用的一般格式如下:

文本框对象.ClearUndo()该方法无参数。

(9)Select方法:用来在文本框中设置选定文本。调用的一般格式如下:

文本框对象.Select(start,length)

该方法有两个参数,第一个参数start用来设定文本框中当前选定文本的第一个字符的位

置,第二个参数length用来设定要选择的字符数。

(10)SelectAll方法:用来选定文本框中的所有文本。调用的一般格式如下:

文本框对象.SelectAll()该方法无参数。

3、常用事件:

(1)GotFocus事件:该事件在文本框接收焦点时发生。

(2)LostFocus事件:该事件在文本框失去焦点时发生。

(3)TextChanged事件:该事件在Text属性值更改时发生。无论是通过编程修改还是用户交互更改文本框的 Text属性值,均会引发此事件。

4、RichTextBox控件

RichTextBox是一种既可以输入文本、 又可以编辑文本的文字处理控件, 与TextBox控件相比, RichTextBox控件的文字处理功能更加丰富, 不仅可以设定文字的颜色、 字体, 还具有字符串检索功能。 另外, RichTextBox控件还可以打开、编辑和存储.rtf格式文件、ASCII文本格式文件及Unicode编码格式的文件。

1、常用属性

上面介绍的 TextBox 控件所具有的属性,RichTextBox 控件基本上都具有,除此之外,该控件还具有一些其他属性。

(1)RightMargin属性:用来设置或获取右侧空白的大小,单位是像素。通过该属性可以设置右侧空白,

如希望右侧空白为50像素,可使用如下语句:

RichTextBox1.RightMargin=RichTextBox1.Width-50;

(2)Rtf属性:用来获取或设置RichTextBox控件中的文本,包括所有RTF格式代码。可以使用此属性将

RTF格式文本放到控件中以进行显示,或提取控件中的RTF格式文本。此属性通常用于在RichTextBox控

件和其他RTF源(如 MicrosoftWord或 Windows写字板)之间交换信息。

(3)SelectedRtf 属性:用来获取或设置控件中当前选定的 RTF 格式的格式文本。此属性使用户得以获取控件中的选定文本,包括RTF格式代码。如果当前未选定任何文本,给该属性赋值将把所赋的文本插入到

插入点处。如果选定了文本,则给该属性所赋的文本值将替换掉选定文本。

(4)SelectionColor属性:用来获取或设置当前选定文本或插入点处的文本颜色。

(5)SelectionFont属性:用来获取或设置当前选定文本或插入点处的字体。

2、常用方法

前面介绍的 TextBox 控件所具有的方法,RichTextBox 控件基本上都具有,除此之外,该控件还具有一些其他方法。

(1)Redo方法:用来重做上次被撤销的操作。调用的一般格式如下:

RichTextBox对象.Redo()

该方法无参数。

(2)Find方法:用来从RichTextBox控件中查找指定的字符串。经常使用的调用格式如下:

[格式1]:

RichTextBox对象.Find(str)

[功能]:在指定的“RichTextBox”控件中查找文本,并返回搜索文本的第一个字符在控件内的位置。如果

未找到搜索字符串或者str参数指定的搜索字符串为空,则返回值为1。

[格式2]:

RichTextBox对象.Find(str,RichTextBoxFinds)

[功能]:在“RichTextBox 对象”指定的文本框中搜索 str 参数中指定的文本,并返回文本的第一个字符在

控件内的位置。如果返回负值,则未找到所搜索的文本字符串。还可以使用此方法搜索特定格式的文本。

参数RichTextBoxFinds指定如何在控件中执行文本搜索,其取值及其含义如表9-4 所示。

[格式3]:

RichTextBox对象.Find(str,start,RichTextBoxFinds)

[功能]:这里Find方法与前面的格式2 基本类似,不同的只是通过设置控件文本内的搜索起始位置来缩小

文本搜索范围,start参数表示开始搜索的位置。此功能使用户得以避开可能已搜索过的文本或已经知道不

包含要搜索的特定文本的文本。如果在options参数中指定了RichTextBoxFinds.Reverse值,则 start参数的值将指示反向搜索结束的位置,因为搜索是从文档底部开始的。

(3)SaveFile方法:用来把RichTextBox中的信息保存到指定的文件中,调用格式有以下三种。

[格式1]:

RichTextBox对象名.SaveFile(文件名);

[功能]:将 RichTextBox控件中的内容保存为RTF格式文件中。

[格式2]:

RichTextBox对象名.SaveFile(文件名,文件类型);

[功能]:将 RichTextBox控件中的内容保存为“文件类型”指定的格式文件中。

[格式3]:

RichTextBox对象名.SaveFile(数据流,数据流类型);

[功能]:将 RichTextBox控件中的内容保存为“数据流类型”指定的数据流类型文件中。

其中,文件类型或数据流类型的取值及含义如表9-5所示。

(4)LoadFile方法:使用LoadFile方法可以将文本文件、RTF文件装入RichTextBox控件。主要的调用格式有以下三种。

[格式1]:

RichTextBox对象名.LoadFile(文件名);

[功能]:将RTF格式文件或标准ASCII文本文件加载到RichTextBox控件中。

[格式2]:

RichTextBox对象名.LoadFile(数据流,数据流类型);

[功能]:将现有数据流的内容加载到RichTextBox控件中。

[格式3]:

RichTextBox对象名.LoadFile(文件名,文件类型);

[功能]:将特定类型的文件加载到RichTextBox控件中。

注意:文件类型和数据流格式见表9-5。

5、NumericUpDown 控件

【Windows 窗体】控件组中的 NumericUpDown 控件看起来像是一个文本框与一对用户可单击以调整值的箭头的组合。可以通过单击向上和向下按钮、按向上和向下箭头键来增大和减小数字,也可以直接输入数

字。单击向上箭头键时,值向最大值方向增加;单击向下箭头键时,值

向最小值方向减少。该控件在工具箱中的图标为 。

该控件的样式如图9-13所示。

1、常用属性:

(1)DecimalPlaces:获取或设置该控件中显示的小数位数。

(2)Hexadecimal:获取或设置一个值,该值指示该控件是否以十六进制格式显示所包含的值。

(3)Increment:获取或设置单击向上或向下按钮时,该控件递增或递减的值。

(4)Maximum:获取或设置该控件的最大值。

(5)Minimum:获取或设置该控件的最小值。

(6)Value:获取或设置该控件的当前值。

与 TextBox控件一样,NumericUpDown控件的常用事件有:ValueChanged、GotFocus、LostFocus等。

按钮类控件

6、Button 控件

Button控件又称按钮控件,是 Windows应用程序中最常用的控件之一,通常用它来执行命令。如果按钮具有焦点,就可以使用鼠标左键、Enter键或空格键触发该按钮的Click事件。通过设置窗体的AcceptButton或 CancelButton 属性,无论该按钮是否有焦点,都可以使用户通过按 Enter 或 Esc 键来触发按钮的 Click事件。一般不使用 Button 控件的方法。Button 控件也具有许多如 Text、ForeColor 等的常规属性,此处不再介绍,只介绍该控件有特色的属性。以后介绍的控件也采用同样的方法来处理。

1、常用属性

(1)DialogResult属性:当使用ShowDialog方法显示窗体时,可以使用该属性设置当用户按了该按钮后,

ShowDialog方法的返回值。值有:OK、Cancel、Abort、Retry、Ignore、Yes、No等。

(2)Image属性:用来设置显示在按钮上的图像。

(3)FlatStyle属性:用来设置按钮的外观。其取值及含义如表9-7 所示。

2、常用事件:

(1)Click事件:当用户用鼠标左键单击按钮控件时,将发生该事件。

(2)MouseDown事件:当用户在按钮控件上按下鼠标按钮时,将发生该事件。

(3)MouseUp事件:当用户在按钮控件上释放鼠标按钮时,将发生该事件。

7、GroupBox 控件

GroupBox控件又称为分组框,它在工具箱中的图标是 。该控件常用于为其他控件提供可识别的分组,其典型的用法之一就是给RadioButton控件分组。可以通过分组框的Text属性为分组框中的控件向用户提供提示信息,如图 9-14 所示。设计时,向GroupBox 控件中添加控件的方法有两种:一是直接在分组框中绘制控件;二是把某一个已存在的控件复制到剪贴板上,然后选中分组框,再执行粘贴操作即可。位于分组

框中的所有控件随着分组框的移动而一起移动,随着分组框的删除而全部删除,分组框的Visible属性和Enabled属性也会影响到分组框中的所有控件。分组框的最常用的属性是Text,一般用来给出分组提示。

8、RadioButton控件

RadioButton又称单选按钮,其在工具箱中的图标为 ,单选按钮通常成组出现,用于提供两个或多个互斥选项,即在一组单选钮中只能选择一个,如图9-14所示。

1、常用属性:

(1)Checked属性:用来设置或返回单选按钮是否被选中,选中时值为true,没有选中时值为false。

(2)AutoCheck 属性:如果 AutoCheck 属性被设置为 true(默认),那么当选择该单选按钮时,将自动清除该组中所有其他单选按钮。对一般用户来说,不需改变该属性,采用默认
值(true)即可。

(3)Appearance 属性:用来获取或设置单选按钮控件的外观。当其取值为 Appearance.Button 时,将使单选按钮的外观像命令按钮一样:当选定它时,它看似已被按下。当取值为 Appearance.Normal 时,就是默认的单选按钮的外观。

(4)Text属性:用来设置或返回单选按钮控件内显示的文本,该属性也可以包含访问键,即前面带有“&”

符号的字母,这样用户就可以通过同时按Alt键和访问键来选中控件。

2、常用事件:

(1)Click事件:当单击单选按钮时,将把单选按钮的Checked属性值设置为true,同时发生Click事件。

(2)CheckedChanged事件:当Checked属性值更改时,将触发CheckedChanged事件。

9、CheckBox 控件

CheckBox控件的常用属性如下。

(1)TextAlign属性:用来设置控件中文字的对齐方式,有9种选择,如图9-16 所示。

从上到下、从左至右分别是:ContentAlignment.TopLeft、ContentAlignment.TopCenter、

ContentAlignment.TopRight、ContentAlignment.MiddleLeft、ContentAlignment.MiddleCenter、

ContentAlignment.MiddleRight、ContentAlignment.BottomLeft、ContentAlignment.BottomCenter 和 ContentAlignment.BottomRight。该属性的默认值为ContentAlignment.MiddleLeft,即文字左 对齐、居控件垂直方向中央。

(2)ThreeState属性:用来返回或设置复选框是否能表示三种状态,如果属性值为true时,表示可以表示三种状态—选中、没选中和中间态(CheckState.Checked、CheckState.Unchecked 和 CheckState.Indeterminate),属性值为false时,只能表示两种状 态——选中和没选中。

(3)Checked属性:用来设置或返回复选框是否被选中,值为true时,表示复选框被选中,值为false时,

表示复选框没被选中。当ThreeState属性值为true时,中间态也表示选中。

(4)CheckState 属性:用来设置或返回复选框的状态。在 ThreeState 属性值为 false 时,取值有

CheckState.Checked或CheckState.Unchecked。在ThreeState属性值被设置为True时,CheckState还可以取值 CheckState.Indeterminate,在此时,复选框显示为浅灰色选中状态,该状态通常表示该选项下的多个子选项未完全选中。

CheckBox控件的常用事件有Click和CheckedChanged等,其含义及触发时机与单选按钮完成一致。

列表类控件

10、ListBox 控件

ListBox 控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。在列表框中,用户

一次可以选择一项,也可以选择多项。

1、常用属性:

(1) Items属性: 用于存放列表框中的列表项,是一个集合。通过该属性,可以添加列表项、移除列表项和获得列表项的数目。

(2)MultiColumn 属性:用来获取或设置一个值,该值指示ListBox是否支持多列。值为 true 时表示支持多列,值为 false 时不支持多列。当使用多列模式时,可以使控件得以显示更多可见项,如图9-19 所示。

(3)ColumnWidth 属性:用来获取或设置多列 ListBox控件中列的宽度。

(4)SelectionMode属性:用来获取或设置在ListBox控件中选择列表项的方法。当 SelectionMode属性设置为 SelectionMode.MultiExtended 时,按下 Shift 键的同时单击鼠标或者同时按 Shift 键和箭头键之一(上箭头键、下箭头键、左箭头键和右箭头键),会将选定内容从前一选定项扩展到当前项。按 Ctrl 键的同时单击鼠标将选择或撤销选择列表中的某项;当该属性设置为 SelectionMode.MultiSimple 时,鼠标单击或按空格键将选择或撤销选择列表中的某项;该属性的默认值为SelectionMode.One,则只能选择一项。

(5)SelectedIndex属性:用来获取或设置ListBox控件中当前选定项的从零开始的索引。如果未选定任何项,则返回值为1。对于只能选择一项的ListBox控件,可使用此属性确定ListBox中选定的项的索引。如果 ListBox 控件的 SelectionMode 属性设置为 SelectionMode.MultiSimple 或 SelectionMode.MultiExtended,并在该列表中选定多个项,此时应用SelectedIndices来获取选定项的索引。

(6)SelectedIndices。该属性用来获取一个集合,该集合包含 ListBox 控件中所有选定项的从零开始的索引。

(7)SelectedItem属性:获取或设置ListBox中的当前选定项。

(8)SelectedItems属性:获取 ListBox控件中选定项的集合,通常在ListBox控件的SelectionMode属性值设置为SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重选择ListBox)时使用。

(9)Sorted属性:获取或设置一个值,该值指示ListBox控件中的列表项是否按字母顺序排序。如果列表

项按字母排序,该属性值为true;如果列表项不按字母排序,该属性值为false。默认值为false。在向已排

序的 ListBox控件中添加项时,这些项会移动到排序列表中适当的位置。

(10)Text 属性:该属性用来获取或搜索 ListBox 控件中当前选定项的文本。当把此属性值设置为字符串

值时,ListBox 控件将在列表内搜索与指定文本匹配的项并选择该项。若在列表中选择了一项或多项,该属性将返回第一个选定项的文本。

(11)ItemsCount属性:该属性用来返回列表项的数目。

2、常用方法:

(1)FindString方法:用来查找列表项中以指定字符串开始的第一个项,有两种调用格式。

[格式1]:

ListBox对象.FindString(s);

[功能]:在“ListBox 对象”指定的列表框中查找字符串 s,如果找到则返回该项从零开始的索引;如果找

不到匹配项,则返回ListBox.NoMatches。

[格式2]:

ListBox对象.FindString(s,n);

[功能]:在 ListBox 对象指定的列表框中查找字符串 s,查找的起始项为n+1,即 n 为开始查找的前一项的索引。如果找到则返回该项从零开始的索引;如果找不到匹配项,则返回ListBox.NoMatches。

注意:FindString 方式只是词语部分匹配,即要查找的字符串在列表项的开头,便认为是匹配的,如果要

精确匹配,即只有在列表项与查找字符串完全一致时才认为匹配,可使用FindStringExact方法,调用格式

与功能与FindString基本一致。

(2)SetSelected方法:用来选中某一项或取消对某一项的选择,调用格式及功能如下。

[格式]:

ListBox对象.SetSelected(n,l);

[功能]:如果参数 l 的值是 true,则在 ListBox 对象指定的列表框中选中索引为 n 的列表项,如果参数l 的值是 false,则索引为n 的列表项未被选中。

(3)Items.Add方法:用来向列表框中增添一个列表项,调用格式及功能如下。

[格式]:

ListBox对象.Items.Add(s);

[功能]:把参数s添加到“listBox对象”指定的列表框的列表项中。

(4)Items.Insert方法:用来在列表框中指定位置插入一个列表项,调用格式及功能如下。

[格式]:

ListBox对象.Items.Insert(n,s);

[功能]:参数n代表要插入的项的位置索引,参数 s代表要插入的项,其功能是把s插入到“listBox对象”

指定的列表框的索引为n的位置处。

(5)Items.Remove方法:用来从列表框中删除一个列表项,调用格式及功能如下。

[格式]:

ListBox对象.Items.Remove(k);

[功能]:从 ListBox对象指定的列表框中删除列表项s。

(6)Items.Clear方法:用来清除列表框中的所有项。其调用格式如下:

ListBox对象.Items.Clear();

该方法无参数。

(7)BeginUpdate方法和EndUpdate方法:这两个方法均无参数,调用格式分别如下:

ListBox对象.BeginUpdate();

ListBox对象.EndUpdate();

这两个方法的作用是保证使用 Items.Add 方法向列表框中添加列表项时,不重绘列表框。即在向列表框添

加项之前,调用BeginUpdate方法,以防止每次向列表框中添加项时都重新绘制 ListBox 控件。完成向列表框中添加项的任务后,再调用 EndUpdate 方法使 ListBox 控件重新绘制。

当向列表框中添加大量的列表项时,使用这种方法添加项可以防止在绘制 ListBox 时的闪烁现象。一个例

子程序如下:

publicvoidAddToMyListBox()

{listBox1.BeginUpdate();

for(intx=1;x<5000;x++)

{

listBox1.Items.Add(“Item”+x.ToString());

}

listBox1.EndUpdate();

}

ListBox控件常用事件有Click和 SelectedIndexChanged,SelectedIndexChanged事件在列表框中改变选中项时发生。

11、ComboBox 控件

ComboBox 控件又称组合框,在工具箱中的图标为。默认情况下,组合框分两个部分显示:顶部是一个允
许输入文本的文本框,下面的列表框则显示列表项。可以认为ComboBox就是文本框与列表框的组合,与
文本框和列表框的功能基本一致。与列表框相比,组合框不能多选,它无 SelectionMode 属性。但组合框
有一个名为DropDownStyle的属性,该属性用来设置或获取组合框的样式,其取值及含义如表9-10所示。

组合框的各种样式如图9-22 所示, 左边的组合框能够通过文本框输入文本, 中间的组合框则不能输入文本,只能选择列表项。

12、CheckedListBox 控件

CheckedListBox控件又称复选列表框,它扩展了ListBox控件,它几乎能完成列表框可以完成的所有任务,并且还可以在列表项旁边显示复选标记。两种控件间的其他差异在于,复选列表框只支持DrawMode.Normal,并且复选列表框只能有一项选定或没有任何选定。此处需要注意一点:选定的项是指窗体上突出显示的项,已选中的项是指左边的复选框被选中的项。复选列表框的样式如图9-23所示。

除具有列表框的全部属性外,它还具有以下属性。

(1)CheckOnClick属性:获取或设置一个值,该值指示当某项被选定时是否应切换左侧的复选框。如果立即切换选中标记,则该属性值为true;否则为false。默认值为false。

(2)CheckedItems 属性:该属性是复选列表框中选中项的集合,只代表处于CheckState. Checked或CheckState.Indeterminate状态的那些项。 该集合中的索引按升序排列。

(3)CheckedIndices 属性:该属性代表选中项(处于选中状态或中间状态的那些项)索引的集合。

PictureBox控件的使用

13、PictureBox 控件的使用

PictureBox 控件又称图片框,常用于图形设计和图像处理应用程序,在该控件中可以加载的图像文件格式

有:位图文件(.Bmp)、图标文件(.ICO)、图元文件(.wmf)、.JPEG 和.GIF 文件。下而仅介绍该控件的常用属性和事件。

1、常用属性:

(1)Image属性:用来设置控件要显示的图像。把文件中的图像加载到图片框通常采用以下三种方式。

设计时单击Image属性,在其后将出现【…】按钮,单击该按钮将出现一个【打开】对话框,在该对话框

中找到相应的图形文件后单击【确定】按钮。产生一个Bitmap类的实例并赋值给Image属性。形式如下:

Bitmapp=newBitmap(图像文件名);

pictureBox对象名.Image=p;

通过 Image.FromFile方法直接从文件中加载。形式如下:

pictureBox对象名.Image=Image.FromFile(图像文件名);

(2)SizeMode属性:用来决定图像的显示模式。

14、Timer 控件

Timer 控件又称定时器控件或计时器控件,在工具箱中的图标是 ,该控件的主要作用是按一定的时间间隔周期性地触发一个名为Tick的事件, 因此在该事件的代码中可以放置一些需要每隔一段时间重复执行的程序段。在程序运行时,定时器控件是不可见的。

1、常用属性:

(1)Enabled 属性:用来设置定时器是否正在运行。值为 true 时,定时器正在运行,值为 false 时,定时器不在运行。

(2)Interval属性:用来设置定时器两次Tick事件发生的时间间隔,以毫秒为单位。如它的值设置为500,则将每隔0.5秒发生一个Tick事件。

2、常用方法:

(1)Start方法:用来启动定时器。调用的一般格式如下:

Timer控件名.start();

该方法无参数。

(2)Stop方法:用来停止定时器。调用的一般格式如下:

Timer控件名.stop();

该方法无参数。

3、常用事件:

定义器控件响应的事件只有Tick,每隔Interval时间后将触发一次该事件。

15、ProgressBar控件和 TrackBar控件

1.ProgressBar控件

ProgressBar 控件又称进度条控件,它在工具栏中的图标为 ,该控件在水平栏中显示适当长度

的矩形来指示进程的进度。当执行进程时,进度条用系统突出显示颜色在水平栏中从左向右进行填充。进

程完成时,进度栏被填满。当某进程运行时间较长时,如果没有视觉提示,用户可能会认为应用程序不响

应,通过在应用程序中使用进度条,就可以告诉用户应用程序正在执行冗长的任务且应用程序仍在响应。

ProgressBar控件的常用属性如下。

(1)Maximum属性:用来设置或返回进度条能够显示的最大值,默认值为100。

(2)Minimum属性:用来设置或返回进度条能够显示的最小值,默认值为0。

(3)Value属性:用来设置或返回进度条的当前位置。

(4)Step属性:用来设置或返回一个值,该值用来决定每次调用PerformStep 方法时, Value属性增加的幅度。例如,如果要复制一组文件,则可将 Step 属性的值设置为 1,并将 Maximum 属性的值设置为要复制的文件总数。在复制每个文件时,可以调用PerformStep方法按Step属性的值增加进度栏。

ProgressBar控件的常用方法如下。

(1)Increment方法:用来按指定的数量增加进度条的值,调用的一般格式如下:

progressBar对象.Increment(n);

其功能是把“progressBar对象”指定的进度条对象的Value属性值增加n,n为整数。调用该方法之后,若

Value属性大于Maximum属性的值,则 Value属性值就是Maximum值,若Value属性小于Minimum属性值,则 Value属性值就是Minimum值。

(2)PerformStep方法:用来按step属性值来增加进度条的Value属性值,调用的一般格式如下:

progressBar对象.PerformStep();

该方法无参数。例如,下列程序段是一个显示复制多个文件的进度的进度条使用方法。

privatevoidCopyWithProgress(string[]filenames)

{pBar1.Visible=true;

pBar1.Minimum=1;

pBar1.Maximum=filenames.Length;

pBar1.Value=1;

pBar1.Step=1;

for(intx=1;x<=filenames.Length;x++)

{if(CopyFile(filenames[x-1])==true)

{

pBar1.PerformStep();

}

}

}

ProgressBar控件能响应很多事件,但一般很少使用。

2.TrackBar控件

TrackBar 控件又称滑块控件、跟踪条控件,它在工具箱中的图标是“ ” 。该控件主要用于在

大量信息中进行浏览,或用于以可视形式调整数字设置。TrackBar控件有两部分:缩略图(也称为滑块)

和刻度线。缩略图是可以调整的部分,其位置与 Value 属性相对应。刻度线是按规则间隔分隔的可视化指

示符。跟踪条控件可以按指定的增量移动,并且可以水平或者垂直排列。

TrackBar控件的常用属性如下。

(1)Maximum属性:用来获取或设置TrackBar控件可表示的范围上限,即最大值。

(2)Minimum属性:用来获取或设置TrackBar控件可表示的范围下限,即最小值。

(3)Orientation属性:用来获取或设置一个值,该值指示跟踪条是在水平方向还是在垂直方向。

(4)LargeChange属性:用来获取或设置一个值,该值指示当滑块长距离移动时应为Value属性中加上或减去的值。

(5)SmallChange属性:用来获取或设置当滑块短距离移动时对Value属性进行增减的值。

(6)Value属性:用来获取或设置滑块在跟踪条控件上的当前位置的值。

(7)TickFrequency属性:用来获取或设置一个值,该值指定控件上绘制的刻度之间的增量。

(8)TickStyle 属性:用来获取或设置一个值,该值指示如何显示跟踪条上的刻度线。

TrackBar控件的常用事件是ValueChanged,该事件在TrackBar控件的Value属性值改变时发生。

16、HScrollBar 控件和 VScrollBar控件的使用

滚动条(ScrollBar)是大部分Windows应用程序中都具有的控件,是 Windows界面的一种常见元素,通常分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar)。HScrollBar 在工具箱中的图标是,VScrollBar控件在工具箱中的图标是。这两个控件主要用于在应用程序或控件中水平或垂直滚动,以方便在较长的列表中或大量信息中转移。

1、常用属性:

(1)Minimum和 Maximum属性:与TrackBar控件的同名属性基本相同。

(2)Value属性:用于设置或返回滑块在滚动条中所处的位置,其默认值为0。当滑块的位置值为最小值时,滑块移到水平滚动条的最左端位置,或移到垂直滚动条的顶端位置。当滑块的位置值为最大值时,滑块移到水平滚动条的最右端位置或垂直滚动条的底端位置。

(3)SmallChange和LargeChange属性:这两个属性主要用于调整滑块移动的距离。其中 SmallChange属性用于控制当鼠标单击滚动条两边的箭头时,滑块滚动的值,即 Value属性增加或减小的值。而LargeChange属性则控制当用鼠标直接单击滚动条时滑块滚动的值。当用户按下PageUp键或PageDown键或者在滑块的任何一边单击滚动条轨迹时,Value属性将按照 LargeChange属性中设置的值进行增加或减小。

2、常用事件:

(1)Scroll事件:该事件在用户通过鼠标或键盘移动滑块后发生。

(2)ValueChanged事件:该事件在滚动条控件的Value属性值改变时发生。

滚动条的使用方法与TrackBar控件基本一致,此处不再赘述。

对话框类控件

17、OpenFileDialog 控件

OpenFileDialog控件又称打开文件对话框,主要用来弹出Windows中标准的【打开文件】

对话框。该控件在工具箱中的图标为 。

OpenFileDialog控件的常用属性如下。

(1)Title属性:用来获取或设置对话框标题,默认值为空字符串(“”)。如果标题为空字符串,则系统将

如何自学黑客&网络安全

黑客零基础入门学习路线&规划

初级黑客
1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)
恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

如果你想要入坑黑客&网络安全,笔者给大家准备了一份:282G全网最全的网络安全资料包评论区留言即可领取!

7、脚本编程(初级/中级/高级)
在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

如果你零基础入门,笔者建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习;搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime;·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完;·用Python编写漏洞的exp,然后写一个简单的网络爬虫;·PHP基本语法学习并书写一个简单的博客系统;熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选);·了解Bootstrap的布局或者CSS。

8、超级黑客
这部分内容对零基础的同学来说还比较遥远,就不展开细说了,附上学习路线。
img

网络安全工程师企业级学习路线

img
如图片过大被平台压缩导致看不清的话,评论区点赞和评论区留言获取吧。我都会回复的

视频配套资料&国内外网安书籍、文档&工具

当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

img
一些笔者自己买的、其他平台白嫖不到的视频教程。
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值