最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#(Winfrom)自定義控件--組合控件方式

 更新時間:2025年07月31日 09:51:02   作者:碼上寫碼  
文章介紹了創(chuàng)建和使用自定義控件的步驟:首先構(gòu)建控件庫項目,添加TextBox和Button控件并設(shè)置透明背景,編寫屬性及事件處理代碼;然后通過測試程序驗證功能,最后將控件部署到測試窗體中使用

本例是制作一個簡單的自定義控件,然后用一個簡單的測試程序,

對于初學(xué)者來說,本例子比較簡單,只能起到拋石引玉的效果。

我也是在學(xué)習(xí)當(dāng)中,今后會將自己所學(xué)的逐步寫出來和大家交流共享。

創(chuàng)建自定義控件

第一步:創(chuàng)建控件庫項目:MyControl

第二步:從工具箱中拖出1個TextBox和Button控件

設(shè)置背景為透明

在項目中添加一個Windows窗體程序

第三步:添加處理程序代碼

PopControls中定義自定義控件的屬性及button事件

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

namespace MyControls
{
    public partial class PopControls : UserControl
    {
        
        public static string s;
        public PopControls()
        {
            InitializeComponent();
        }
        //定義自定義的屬性
        [Browsable(true)]
        [Description("點(diǎn)擊按鈕,窗體的寬度,單位時像素"),Category("自定義屬性"),DefaultValue(0)]
        public int PopWidth { get; set; }
        [Browsable(true)]
        [Description("點(diǎn)擊按鈕,窗體的高,單位時像素"), Category("自定義屬性"), DefaultValue(0)]
        public int PopHeight { get; set; }
        [Browsable(true)]
        [Description("窗體的Text屬性"), Category("自定義屬性"), DefaultValue(0)]
        public string PopText { get; set; }
        private void btnok_Click(object sender, EventArgs e)
        {
            FrmPop frm = new FrmPop(PopWidth,PopHeight,PopText);
            frm.ShowDialog();

            txtnode.Text = s;
        }
    }
}

FrmPop窗體代碼

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 MyControls
{
    public partial class FrmPop : Form
    {
        public FrmPop(int PopWidth,int PopHeight,string PopText)
        {
            InitializeComponent();
            this.ClientSize = new System.Drawing.Size(PopWidth, PopHeight);
            this.Text = PopText;
        }

        private void FrmPop_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 50; i++)
            {
                //隨機(jī)數(shù)
                string s = Guid.NewGuid().ToString("N");
                listBoxGuid.Items.Add(s);
            }
            
        }

        private void listBoxGuid_DoubleClick(object sender, EventArgs e)
        {
            PopControls.s = listBoxGuid.SelectedItem.ToString();

            this.Close();
        }
    }
}

第四步:測試控件

雙擊listbox中的數(shù)據(jù)

第五步:查看成生的控件文件,到該項目文件目錄下的bin->debug中可找到。

使用自定義控件

第一步:創(chuàng)建Windows窗體程序

第二步:添加自定義控件

右鍵選中添加選項卡

在自定義控件下右鍵點(diǎn)擊選擇項,彈框如下圖:

點(diǎn)擊瀏覽,找到自定義控件項目–bin–debug–Mycontrols.dll文件

選中控件文件 Mycontrols.dll ,單擊“打開”按鈕,回到自定義工具箱,系統(tǒng)會默認(rèn)把你剛才選中的控件打上 勾

返回vs編輯器,可看到工具箱中發(fā)現(xiàn)PopControls控件:

第三步:拖動1個自定義的控件到測試窗口

第四步:測試自定義控件

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • c# 實(shí)現(xiàn)模糊PID控制算法

    c# 實(shí)現(xiàn)模糊PID控制算法

    這篇文章主要介紹了c# 實(shí)現(xiàn)模糊PID控制算法的示例代碼,幫助大家更好的理解和使用c#編程語言,感興趣的朋友可以了解下
    2020-12-12
  • C#中預(yù)處理指令的實(shí)現(xiàn)

    C#中預(yù)處理指令的實(shí)現(xiàn)

    預(yù)處理指令是C#編譯前用于條件編譯、調(diào)試和代碼組織的指令,本文主要介紹了C#中預(yù)處理指令的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2025-05-05
  • WPF自定義控件實(shí)現(xiàn)ItemsControl魚眼效果

    WPF自定義控件實(shí)現(xiàn)ItemsControl魚眼效果

    這篇文章主要為大家詳細(xì)介紹了WPF如何通過自定義控件實(shí)現(xiàn)ItemsControl魚眼效果,文中的示例代碼講解詳細(xì),需要的可以參考一下
    2024-01-01
  • 使用C#開發(fā)OPC?Server服務(wù)器源碼解析

    使用C#開發(fā)OPC?Server服務(wù)器源碼解析

    OPC?Server服務(wù)器服務(wù)器的開發(fā)比較繁瑣,本示例采用C#提供了一種簡單快速實(shí)現(xiàn)OPCServer的方法,已經(jīng)在工程項目中應(yīng)用,本文對C#開發(fā)OPC?Server服務(wù)器相關(guān)知識給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2022-06-06
  • WPF使用WinSCP實(shí)現(xiàn)FTP下載

    WPF使用WinSCP實(shí)現(xiàn)FTP下載

    這篇文章主要為大家詳細(xì)介紹了WPF如何使用WinSCP實(shí)現(xiàn)FTP下載,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)或工作有一定幫助,感興趣的小伙伴可以了解一下
    2023-01-01
  • C#實(shí)現(xiàn)treeview綁定的方法

    C#實(shí)現(xiàn)treeview綁定的方法

    這篇文章主要介紹了C#實(shí)現(xiàn)treeview綁定的方法,包括datatable的獲取與節(jié)點(diǎn)的操作,具有一定的參考價值,需要的朋友可以參考下
    2014-12-12
  • 在C#中將Word轉(zhuǎn)換為PostScript的代碼實(shí)現(xiàn)

    在C#中將Word轉(zhuǎn)換為PostScript的代碼實(shí)現(xiàn)

    在需要高質(zhì)量打印或跨平臺文檔分發(fā)的場景中,將Word轉(zhuǎn)換為PostScript是專業(yè)選擇,所以本文給大家介紹了如何在 C# 中將 Word 轉(zhuǎn)換為 PostScript,需要的朋友可以參考下
    2025-09-09
  • C#的TimeSpan案例詳解

    C#的TimeSpan案例詳解

    這篇文章主要介紹了C#的TimeSpan案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C#字符串String及字符Char的相關(guān)方法

    C#字符串String及字符Char的相關(guān)方法

    這篇文章介紹了C#字符串String及字符Char的相關(guān)方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • C#如何動態(tài)創(chuàng)建Label,及動態(tài)label事件

    C#如何動態(tài)創(chuàng)建Label,及動態(tài)label事件

    這篇文章主要介紹了C#如何動態(tài)創(chuàng)建Label,及動態(tài)label事件,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04

最新評論

崇信县| 丹寨县| 洪雅县| 石林| 永善县| 合肥市| 哈巴河县| 德江县| 绥中县| 天峨县| 浦江县| 常德市| 蓝田县| 安达市| 通河县| 瑞昌市| 平江县| 尚志市| 乐平市| 泗水县| 宁津县| 祁门县| 达拉特旗| 都匀市| 汪清县| 禄丰县| 陆良县| 宣恩县| 淳安县| 集安市| 从化市| 安义县| 南充市| 阿瓦提县| 金塔县| 阿巴嘎旗| 吴忠市| 南宁市| 长宁区| 晋宁县| 额尔古纳市|