基于.NET的Windows窗体编程之WinForms滑块与上下控件

在实际应用开发中,滑块控件主要用于拖动滑块调整当前的阈值,如拖动调整颜色范围;上下控件主要用于通过点击上下按钮切换数值或选项,它们所需要的空间更少,操作更方便。合理的利用滑块控件和上下控件进行布局,还可以起到事半功倍的效果,今天我们以一些简单的小例子,简述基于.NET的Windows窗体编程中TrackBar,DomainUpDown,NumericUpDown控件的相关应用,仅供学习分享使用,如有不足之处,还请指正。

概述

今天讲解的控件主要有三个,都是不常用控件,但合理的利用,既可以提高用户体验,还可以减少页面占用,主要如下所示:

  • DomainUpDown,文本框和列表控件的组合,通过单击向上和向下按钮在列表中移动。
  • NumericUpDown,文本框和一对箭头的组合,用户可以单击这些箭头来调整数值的大小。
  • TrackBar,有时也称为"滑块"控件,用于直观调整数值设置。

DomainUpDown

DomainUpDown 控件类似于文本框与用于在列表中上下移动的一对按钮的组合,可以通过设置需要在控件中显示的列表项,用户可以通过单击向上和向下按钮在列表中移动、按上下箭头键,或键入与列表中的项目匹配的字符串来选择字符串。此控件的功能与列表框或组合框非常相似,但它占用的空间很少。DomainUpDown 控件的常见属性,主要有以下几个:

  • Items,包含显示在控件中的对象列表,默认是字符串列表。
  • ReadOnly,表示控件的编辑框是否是只读的,如果设置为true,则只能通过鼠标点击上下按钮或键盘上的上下键进行选择,不能通过输入匹配的字符串来适配。
  • Wrap,表示是否循环显示,如果设置为true,当移动到最后一个时,按向下键时会自动移动到第一个选项;返回当移动到第一个时,按向上键时,会自动移动到最后一个选项。
  • Sorted,表示是否对列表中的选项进行排序,默认为false。
  • Text,设置控件显示的文本。

首先拖动DomainUpDown控件到Form表单中,然后选择控件,并在控件的属性窗口中,设置列表项内容(Items),如下所示:

切换到属性窗口的事件Tab页,选择SelectedItemChanged事件,双击添加事件处理函数,如下所示:

在事件处理函数中,添加如下逻辑:

cs 复制代码
private void domainUpDown1_SelectedItemChanged(object sender, EventArgs e)
{
    this.txtSelectIndex.Text = this.domainUpDown1.SelectedIndex.ToString();
    this.txtSelectResult.Text = this.domainUpDown1.SelectedItem?.ToString();
}

运行示例,效果如下所示:

NumericUpDown

NumericUpDown 类似于文本框和一对箭头的组合,用户可以单击这些箭头来调整值。 用户可以通过单击向上和向下箭头、按向上键和向下键或在控件的文本框部分键入数字来增加和减少数字。控件文本框中显示的数字可以具有各种格式,包括十六进制。NumericUpDown控件的关键属性,如下所示:

  • Value,获取或设置控件当前的数值。
  • Maximum,表示空间的最大值,默认值 100。
  • Minimum ,表示控件的最小值,默认值 0。
  • Increment ,表示每次点击控件的上下箭头按钮时,改变的量,默认值 1。

可以配置NumericUpDown 控件中值的显示方式,常用设置属性如下:

  • DecimalPlaces 表示小数点后显示的数字数,即表示显示几位小数;默认值为 0,不显示小数。
  • ThousandsSeparator 表示是否在每三个十进制数字之间插入分隔符,默认为false。
  • Hexadecimal 表示控件是否显示十六进制格式的值;默认值为false。

首先拖动NumericUpDown控件到Form表单中,然后选择控件,并在控件的属性窗口中,设置控件的属性,如下所示:

切换到属性窗口的事件Tab页,选择ValueChanged事件,双击添加事件处理函数,如下所示:

在事件处理函数中,添加如下逻辑:

cs 复制代码
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
    this.txtNumericResult.Text = this.numericUpDown1.Value.ToString();
}

运行示例,效果如下所示:

TrackBar

TrackBar 控件(有时也称为"滑块"控件)用于直观调整数值设置。 该 TrackBar 控件由两部分组成:滑块(也称为拇指)和刻度线。 拇指是可以调整的部分,度线是以固定间隔排列的视觉指示器。 滑动条按照您指定的增量移动,并且可以水平或垂直对齐。TrackBar控件的常用属性,主要有以下几个:

  • Value,表示控件当前的值。
  • TickFrequency,表示是刻度线的间距。
  • Minimum,表示轨道条上的最小值。
  • Maximum,表示轨道条上的最大值。
  • SmallChange 表示按下向左键或向右键时拇指移动的位置数。
  • LargeChange 表示按下 PAGE UP 或 PAGE DOWN 键时拇指移动的位置数,或鼠标单击位于拇指两侧的跟踪栏。即鼠标在控件上点击一下,移动的量,鼠标在滑块左侧点击,则减少;鼠标在滑块右侧点击,则增加。

首先拖动TrackBar控件到Form表单中,然后选择控件,在右侧属性窗口中,可以设置控件的常见属性,如下所示:

在属性窗口中,切换到事件Tab页,然后在ValueChanged事件,双击文本框,添加值改变时事件处理函数,如下所示:

在事件处理函数中添加如下逻辑:

cs 复制代码
private void trackBar1_ValueChanged(object sender, EventArgs e)
{
    this.txtTrackBarValue.Text = this.trackBar1.Value.ToString();
}

运行示例,效果如下所示:

以上就是《基于.NET的Windows窗体编程之WinForms滑块与上下控件》的全部内容,旨在抛砖引玉,希望可以一起学习,共同进步!!!

相关推荐
WarPigs1 小时前
C#把byte[]以十六进制打印,带分割符
c#
暴走约伯2 小时前
【VFX工具链源码拆解 04】拯救丢失的绑定:Timeline 一键克隆与层级相对路径重映射算法
unity·c#·游戏引擎·硬件工程
1-1=02 小时前
C# 反射
c#·.net·.netcore
一叶星殇3 小时前
版本即契约:.NET 6 WebAPI 多版本治理与 Swagger 文档分治实践
mvc·.net
kk_net88993 小时前
微软常用运行库合集免费下载安装教程(附运行库安装包)微软运行库安装图文教程
其他·microsoft
Jeff-Tsai3 小时前
Day 9:数据与定义分家,表单不必各自建类型
.net·架构设计·erp·definition-driven
步步为营DotNet3 小时前
.NET 可观测性选型:Metrics、ActivitySource、EventSource 到底该用哪个
c#·.net·metrics·可观测性
CSharp精选营4 小时前
我把 Ant Design Blazor 翻了一遍:Blazor 中后台组件库到底能不能用
.net·blazor·ant design blazor·中后台系统·mudblazor
IT规划师4 小时前
Redis 数据类型全解 - ZSet:两个编码,七种玩法(五)
redis·.net
吃一碗粉只付一碗钱15 小时前
16-SqlSugar多库ConfigId与按实体选连接
sqlserver·c#