WinForm窗体基础控件

标签(Lable)

标签控件一般用于显示用户不能编辑的文本或图像,该控件是用于对窗体上各种控件进行标注或说明的。

属性描述
Name标签的对象名称,便于在代码中访问
Image标签上将显示的图像
Text标签上的文本
方法描述
Hide()隐藏控件
Show()显示就控件

文本框(TextBox)

文本框控件一般用于获取用户输入的信息。单行文本框,多行文本框和密码文本框(比如输入密码时显示显示*号)都是使用文本框控件。

属性描述
Name文本框的对象名称,便于在程序中引用
MaxLength获取或设置用户可在文本框控件中输入的最大字符数
Multiline获取或设置控件是否为多行文本框,True为多行文本框,False 相反
PasswordChar获取或者设置一个字符,在该文本框输入数据时,显示为该字符
ReadOnly获取或设置该文框中的文本是否为只读
TabIndex控件获得焦点的顺序,值越小越早获得焦点
Text文本框显示的文本,用户输入数据后,通过该属性获取数据
方法描述
AppendText()在文本框内现有的末尾追加文本
Clear()清楚文本框内的所有文本

按钮(Button)

按钮提供了用户与应用程序进行互交的功能,比如用户输入数据后,单击按钮可以提交该数据给程序处理。

属性描述
Text显示在按钮上的文本
Name按钮控件的对象名称
方法描述
Click单击按钮时将执行时事件

列表框(ListBox)

列表框控件中的每个选项被称为项(Item)。

参数重载描述
Show(消息内容)消息框内显示指定的文本
Show(消息内容,消息框标题文本)显示指定文本和标题
Show(消息内容,标题文本,消息框上的按钮)显示指定文本框,指定标题和指定的按钮
Show(消息内容,标题文本,消息框上的按钮,消息框显示的图标)显示指定文本框,指定标题,指定的按钮和图标符号

其中MessageBoxButtons属于按钮枚举值,设置消息框上面的哪些按钮。

成员名称说明
OK消息框包含“确认”按钮
OKCancel“确认”和“取消”按钮
AbortRetryIgnore“中止” ,“重试”和“忽略”按钮
YesNoCancel“是”,“否” 和“取消”按钮
YesNo“是”和“否”按钮
RetryCancel“重试”和”取消“按钮

MessageBoxIcon属于图标枚举值,图标部分枚举值 Information,Error, Exclamation,Question。

private void btuCancel_Click(object sender, EventArgs e)
        {
            DialogResult dr = MessageBox.Show("你确定要取消注册吗?", "确认取消",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
            if (dr == DialogResult.Yes)
            {
                Application.Exit();
            }
         }

在这里插入图片描述

多个窗体的使用

想从当前窗体中显示宁一个窗体时,必须在当前窗体中创建另一个窗体的实例。

 新窗体类  窗体实例名称=new 新窗体类();

只是实例化一个窗体类的对象是不能让窗体“显示”出来的,还要调用该对象的方法显示出窗体,窗体对象有两个方法可以完成该功能。
方法一:

窗体实例名称.Show();    //主窗体和子窗体之间可以任意切换,互不影响。

方法二:

窗体实例名称.ShowDialog();    //必须要操作完子窗体并关闭子窗体后才能在操作主窗体。

综合案例

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace MyFirstWinForn
{
    public partial class frmMain : Form
    {
        public frmMain()
        {
            InitializeComponent();
        }

        private void btuRegister_Click(object sender, EventArgs e)
        {
            string name = this.txtName.Text;
            string pwd = this.txtPwd.Text;
            string remark = this.txtRenark.Text;
            if (name.Equals(" ")) {
                MessageBox.Show("用户名不能包含空格!","内容非法");
                return;
            }
            if(name.Length<6) {
                MessageBox.Show("用户名不能少于6个字符!", "内容非法");
                return;
            }
            if(pwd.Length<6) {
                MessageBox.Show("密码不能少于6个字符!", "内容非法");
                return;
            }
            string info = "用户名:"+name + "\r\n" +"密码:"+ pwd + "\r\n"+"备注:" + remark;
            frmShow frmShow = new frmShow();
            frmShow.Show();
            frmShow.SetInfo(info);
        }

        private void btuCancel_Click(object sender, EventArgs e)
        {
            DialogResult dr = MessageBox.Show("你确定要取消注册吗?", "确认取消",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
            if (dr == DialogResult.Yes)
            {
                Application.Exit();
            }
            else {
                this.txtName.Text = "";
                this.txtPwd.Text = "";
                this.txtRenark.Text = "";
            }
        }

        private void frmMain_Load(object sender, EventArgs e)
        {

        }
    }
}

在这里插入图片描述

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace MyFirstWinForn
{
    public partial class frmShow : Form
    {
        public frmShow()
        {
            InitializeComponent();
        }
        public void SetInfo(string info) {
            this.txtMessage.Text = info;
        }
    }
}

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

  • 6
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在C# WinForm窗体中,如果你想要在表格控件上填充颜色,但是鼠标经过其他控件时整个表格里的数据都变了,可能是因为你在窗体上直接绘制了表格,而没有使用自定义控件来解决这个问题。\[1\] 你可以尝试使用自适应类来解决这个问题。首先,将自适应类的代码复制到你的工程命名空间中,然后声明自适应类的实例。接下来,在窗体上添加SizeChanged事件,并在事件方法中记录窗体控件的初始位置和大小。最后,调用自适应类的自适应方法,完成自适应。这样,你就可以在表格控件上填充颜色而不会受到其他控件的影响了。\[2\] 你还可以使用Panel、DataGridView等控件来实现自适应。\[2\] 在窗体的代码中,你需要引入System、System.Collections.Generic、System.ComponentModel、System.Drawing和System.Windows.Forms这些命名空间,并在窗体的Load事件中调用自适应类的初始化方法,记录窗体控件的初始位置和大小。然后,在窗体的SizeChanged事件中调用自适应类的自适应方法,完成自适应。\[3\] 这样,你就可以在C# WinForm窗体中使用表格控件,并且实现自适应的效果了。 #### 引用[.reference_title] - *1* [C#自定义控件实现窗体绘制表格](https://blog.csdn.net/qq_22955427/article/details/76252582)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [C# WinForm 窗体及其控件的自适应](https://blog.csdn.net/chbxgbin/article/details/109690260)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值