創建控件
使用new 來創建,比如 TextBox txt=new TextBox();
使用控件對象.Loction= new Point(x,y);設置控件的初始位置
使用this.Controls.Add(控件對象);將控件對象添加至當前窗體
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 CreateControls
{
? ?public partial class Form1 : Form
? ?{
? ? ? ?public Form1()
? ? ? ?{
? ? ? ? ? ?InitializeComponent();
? ? ? ?}
? ? ? ?private void button1_Click(object sender, EventArgs e)
? ? ? ?{
? ? ? ? ? ?TextBox my_txt = new TextBox();
? ? ? ? ? ?my_txt.Location=new Point(25,25);//設置初始位置
? ? ? ? ? ?this.Controls.Add(my_txt);//將控件添加至當前窗體
? ? ? ?}
? ?}
}
控件的對齊方式
挺簡單,鼠標放上去會告訴你都是什么意思
1.文本控件
Label控件
Button
private void Form1_Load(object sender, EventArgs e)
{
? ? ? ? ? ?this.AcceptButton = button1;
}
RichTextBox
Both屬性:文本超出范圍后,行、列的滾動條顯示
None:從不顯示滾動條
Horizontal:橫向超出范圍,顯示水平滾動條
Vertical:縱向超出范圍時,顯示垂直滾動條
ForcedHorizontal:當WordWrap設置為false,顯示水平滾動條,未文本超出范圍,變成灰色
ForcedVertical:始終顯示垂直滾動條,未超出范圍,顯示為灰色
ForcedBoth:強制顯示水平和垂直方向的滾動條
private void Form1_Load(object sender, EventArgs e)
{
? ?this.AcceptButton = button1;
? ?richTextBox1.Multiline = true;//多行顯示
? ?richTextBox1.ScrollBars = RichTextBoxScrollBars.Vertical;//
? ?//字體設置
? ?richTextBox1.SelectionFont = new Font("Courier New", 16, FontStyle.Bold);
? ?//字體顏色
? ?richTextBox1.SelectionColor = System.Drawing.Color.Blue;
? ?//段落顯示,每行顯示一個黑點
? ? richTextBox1.SelectionBullet = true;
/ /控件做邊緣與文本間隔8px
? ? ? ? ? ?richTextBox1.SelectionIndent = 8;
? ? ? ? ? ?//右邊設置12
? ? ? ? ? ?richTextBox1.SelectionRightIndent=12;
}
//打開超鏈接
?private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
? ? ? ?{
? ? ? ? ? ?System.Diagnostics.Process.Start(e.LinkText);
? ? ? ?}
2.選擇控件
ComboBox:下拉組合控件
CheckBox:復選框控件
RadioButton: 單選按鈕控件
NumericupDown:數值選擇控件
ListBox:列表控件
ComboBox
屬性:DropDownStyle
//設置下拉不可編輯
comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
//添加值
comboBox1.Items.Add("C++");
comboBox1.Items.Add("C#");
comboBox1.Items.Add("JS");
comboBox1.Items.Add("Python");
使用SelectAll方法可以選擇可編輯部分的所有文本,但是DropDownStyle必須設置成DropDown
private void button2_Click(object sender, EventArgs e)
? ? ? ?{
? ? ? ? ? ?//當再次查看下拉表時,可編輯文本中內容已經被選中
? ? ? ? ? ?comboBox1.SelectAll();
? ? ? ?}
CheckBox
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
? ?if(checkBox1.CheckState==CheckState.Checked)
? ?{
? ? ? ?MessageBox.Show("復選框被選中", "");
? ?}
? ?else
? ?{
? ? ? ?MessageBox.Show("復選框被取消", "");
? ?}
}
RadioButton
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
? ?if(radioButton1.Checked==true)
? ?{
? ? ? ?MessageBox.Show("單選按鈕被選中", "");
? ?}
}
NumericUpDown
Maximum:設置上限最大值
Minimum:設置最小值
Value:獲得選中的值
private void Form1_Load(object sender, EventArgs e)
{
? ?//設置數值控件的選擇范圍
? ?numericUpDown1.Maximum = 100;
? ?numericUpDown1.Minimum=0;
?//數值后顯示小數兩位
? ? ?numericUpDown1.DecimalPlaces = 2;
}
private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
? ? ?label1.Text = "當前值是:" + numericUpDown1.Value;
}
ListBox
SelectionMode枚舉成員
private void button3_Click(object sender, EventArgs e)
{
? ?if(textBox1.Text!="")
? ?{
? ? ? ?listBox1.Items.Add(textBox1.Text);
? ?}
}
private void button4_Click(object sender, EventArgs e)
{
? ?if(listBox1.SelectedItems.Count!=0)//判斷是否選擇數據
? ?{
? ? ? ?listBox1.Items.Remove(listBox1.SelectedItem);
? ?}
}
3. 分組控件
Pannel:可用于設置滾動條, Visiable:true顯示,false隱藏
GroupBox:分組控件,Text設置分組標題
TabControl:選項卡控件,Add方法用于添加控件 tabPage1.Controls.Add(btn1),tabControl1.TabPages.Add(),clear清除所有控件
該文章在 2024/12/4 15:23:10 編輯過