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

淺析C#如何在自定義事件里傳遞數(shù)據(jù)

 更新時間:2024年12月25日 10:10:54   作者:anlog  
這篇文章主要為大家詳細介紹了C#在自定義事件里傳遞數(shù)據(jù)的相關知識,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以參考下

通過自定義事件來傳值。此種方法適合于寫驅動程序。進行數(shù)據(jù)采集。

對于一般的系統(tǒng)事件,是有兩個參數(shù)的,一個是sender,一個是EventArgs,對于sender,個事件的觸發(fā)者,一般指向的是一個控件,但是對于EventArgs,一般常用來傳遞鼠標位置等信息,下面就自定義事件傳值就是通過EventArgs來實現(xiàn)。

基礎篇

通過EventArgs來實現(xiàn)傳值,我們首先需要創(chuàng)建一個類,繼承EventArgs,我們可以將需要傳遞的數(shù)據(jù),直接在類里面定義成屬性,這里以傳遞一個布爾(沒有再最終的代碼內使用)、一個浮點數(shù),一個字符串為例,代碼如下所示:

using System;
namespace myEventPrj
{
    /// <summary>
    /// 自定義事件
    /// </summary>
    public class myEventArgs:EventArgs
    {
        public bool BoolValue {  get; set; }    
        public float FloatValue {  get; set; }
        public string StrValue {  get; set; }
    }
}

然后我們創(chuàng)建一個類,類里面創(chuàng)建一個事件,并激發(fā)事件,這里傳遞的值為True和12.34,str傳輸時間,代碼如下:

using System;
namespace myEventPrj
{
    internal class MyTestClass
    {
        public void AckEvent()
        {
            //觸發(fā)事件
            myEvent?.Invoke(this, new myEventArgs()
            {
                BoolValue = true,
                FloatValue = 12.34f,
                StrValue = DateTime.Now.ToString()
            });
        }
        //創(chuàng)建事件
        public event EventHandler myEvent;
    }
}

我們在主窗體中,實例化類,并進行事件綁定,看看能不能獲取到傳遞的數(shù)據(jù),代碼如下:

using System;
using System.Windows.Forms;
 
namespace myEventPrj
{
    //https://mp.weixin.qq.com/s?__biz=MzI4OTQyMzY3MQ==&mid=2247493894&idx=1&sn=131e50c046608bf17c09d8118739a2fe&chksm=ed20d4ff08f84521b62e39da3b3ae5533e0fb9ab40852533188fb103cb578bab7010e391b356&mpshare=1&scene=1&srcid=1223Cf4UQDdpgFDmWgaBQgQk&sharer_shareinfo=eba01a08e8f309806a7eb3645b15eb4c&sharer_shareinfo_first=eba01a08e8f309806a7eb3645b15eb4c&exportkey=n_ChQIAhIQGPSzxZb%2BaWifi0gzEAAEfxKfAgIE97dBBAEAAAAAAEVENy%2Bj2rEAAAAOpnltbLcz9gKNyK89dVj0zitidN8l4UPUZ%2FZQP5CCyKDsHp63TUkdE42ttJ%2FabOvWFTHQll95vdd%2FbVBWRQwYVm4Un5z%2FuVQB4ns7YgiHywMP0WaBLonyYRYEiTVYEOmXf3F3YH2rCzkAt4SbP8hsPEYaRO8cFKcX6uEktz6VVUtAQYsp4Z9KPXTkSCGA6S5t9LS50zkSQf5MQU2%2F%2FcKiMgHCeTsvifpWKxy1RY%2Fk8N03%2BqXB6ItdNGjmENQtzHyYdWAcbPKDdg6jmizPSnZCiUP%2FhDYAEOaPSumC0jiLJFS3bTh3EiaIDueE%2F31r71eoDaxKKWrblhVtIqowfWz0ILdBCsAr2VxL&acctmode=0&pass_ticket=CSpjFkwd1sOdAwac3Aa9E25thIeYyMCW8OIM1UwpsNp%2B06JUG23YSoSLKrq1WjGh&wx_header=0#rd
    public partial class Form1 : Form
    {
        MyTestClass T;
        public Form1()
        {
            InitializeComponent();
            T = new MyTestClass();
            T.myEvent += T_myEvent;
        }
 
        private void T_myEvent(object sender, EventArgs e)
        {
            myEventArgs arges = e as myEventArgs;
            richTextBox1.AppendText(arges.StrValue + " " + arges.FloatValue.ToString() + "\r\n");
        }
        private void button1_Click(object sender, EventArgs e)
        {
            T.AckEvent();
        }    
    }
}

運行結果如下所示:

參考文章:

C#如何在自定義事件里傳遞自定義數(shù)據(jù)

到此這篇關于淺析C#如何在自定義事件里傳遞數(shù)據(jù)的文章就介紹到這了,更多相關C#自定義事件傳遞數(shù)據(jù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 如何在C#項目中鏈接一個文件夾下的所有文件詳解

    如何在C#項目中鏈接一個文件夾下的所有文件詳解

    很多時候我們需要獲取一個結構未知的文件夾下所有的文件或是指定類型的所有文件,下面這篇文章主要給大家介紹了關于如何在C#項目中鏈接一個文件夾下的所有文件,需要的朋友可以參考下
    2023-02-02
  • C# 9.0 特性全面總結

    C# 9.0 特性全面總結

    這篇文章主要介紹了C# 9.0 特性的相關資料,幫助大家更好的理解和學習使用c#,感興趣的朋友可以了解下
    2021-02-02
  • 基于C#實現(xiàn)圖片合成功能

    基于C#實現(xiàn)圖片合成功能

    這篇文章主要為大家詳細介紹了如何利用C#實現(xiàn)圖片合成的功能,文中的示例代碼講解詳細,對我們學習C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下
    2022-12-12
  • C#實現(xiàn)將javascript文件編譯成dll文件的方法

    C#實現(xiàn)將javascript文件編譯成dll文件的方法

    這篇文章主要介紹了C#實現(xiàn)將javascript文件編譯成dll文件的方法,涉及C#編譯生成dll動態(tài)鏈接庫文件的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11
  • C#實現(xiàn)簡單計算器功能

    C#實現(xiàn)簡單計算器功能

    給大家分享用C#寫出一個計算機功能的全部代碼分享,有興趣的朋友可以跟著做一下。
    2018-03-03
  • C#中的委托介紹

    C#中的委托介紹

    這篇文章主要介紹了C#中的委托介紹,本文講解了聲明委托的方式、匿名方法、多播委托等內容,需要的朋友可以參考下
    2015-01-01
  • C#托管堆對象實例包含內容分析

    C#托管堆對象實例包含內容分析

    這篇文章主要介紹了C#托管堆對象實例包含內容,實例展示了托管對象的結構及運行原理,需要的朋友可以參考下
    2014-09-09
  • C#運行CGI程序實例

    C#運行CGI程序實例

    這篇文章主要介紹了C#運行CGI程序的方法,實例講述了具體的配置步驟與實現(xiàn)代碼,具有一定的參考借鑒價值,需要的朋友可以參考下
    2014-12-12
  • C# 數(shù)組中的 indexOf 方法及使用

    C# 數(shù)組中的 indexOf 方法及使用

    這篇文章主要介紹了C# 數(shù)組中的 indexOf 方法以及indexof方法的使用講解,需要的朋友可以參考下
    2018-02-02
  • C#集合之可觀察集合的用法

    C#集合之可觀察集合的用法

    這篇文章介紹了C#集合之可觀察集合的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04

最新評論

建昌县| 奉贤区| 河南省| 祁门县| 民权县| 烟台市| 新安县| 右玉县| 崇阳县| 临澧县| 宁武县| 沭阳县| 佛冈县| 阿巴嘎旗| 永清县| 开远市| 无极县| 巴青县| 榆中县| 曲周县| 兰溪市| 桐城市| 沈丘县| 监利县| 南丰县| 邵武市| 绥芬河市| 沁阳市| 新建县| 安泽县| 平罗县| 鄂托克旗| 马边| 拉萨市| 清远市| 洪泽县| 彭州市| 简阳市| 桦川县| 安西县| 内乡县|