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

C# WinForm遍歷窗體控件的3種方法

 更新時間:2021年04月12日 08:41:13   作者:五維思考  
這篇文章主要介紹了C# WinForm遍歷窗體控件的3種方法,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下

1.循環(huán)遍歷

private void GetControls(Control fatherControl)
{
    Control.ControlCollection sonControls = fatherControl.Controls;
    foreach (Control control in sonControls)
    {
        listBox1.Items.Add(control.Name);
    }
}

結(jié)果:能獲取到Panel、GroupBox、TabControl等控件
問題:Panel等控件上面的子控件獲取不到

2.遞歸遍歷

private void GetControls(Control fatherControl)
{
    Control.ControlCollection sonControls = fatherControl.Controls;
    foreach (Control control in sonControls)
    {
        listBox1.Items.Add(control.Name);
        if (control.Controls != null)
        {
            GetControls(control);
        }
    }
}

結(jié)果:能獲取到絕大多數(shù)控件
問題:Timer、ContextMenuStrip等控件獲取不到

3.使用反射

private void GetControls(Control fatherControl)
{
    System.Reflection.FieldInfo[] fieldInfo = this.GetType().GetFields(BindingFlags.NonPublic | BindingFlags.Instance);
    for (int i = 0; i < fieldInfo.Length; i++)
    {
        listBox1.Items.Add(fieldInfo[i].Name);
    }
}

結(jié)果:所有控件都被獲取到了

DevExpress控件無法使用this.Controls進行遍歷,只能通過反射的方法獲得,如下代碼:

public void SearchBarManager()
{
    Type FormType = this.GetType();
    FieldInfo[] fi = FormType.GetFields(BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Public);
    foreach (FieldInfo info in fi)
    {
        if (info.FieldType == typeof(DevExpress.XtraBars.BarManager))
        {
            DevExpress.XtraBars.BarManager bar = (info.GetValue(this)) as DevExpress.XtraBars.BarManager;
            foreach (DevExpress.XtraBars.BarItem bi in bar.Items)
            {
                MessageBox.Show(bi.Name);
            }
        }
    }
}

以上就是C# WinForm遍歷窗體控件的3種方法的詳細內(nèi)容,更多關(guān)于WinForm遍歷窗體控件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Unity實現(xiàn)刮獎效果

    Unity實現(xiàn)刮獎效果

    這篇文章主要為大家詳細介紹了Unity實現(xiàn)刮獎效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • 輕松學(xué)習(xí)C#的讀寫操作

    輕松學(xué)習(xí)C#的讀寫操作

    輕松學(xué)習(xí)C#的讀寫操作,小編也是第一次接觸C#的讀寫操作,感興趣的小伙伴們可以參考一下,大家一起學(xué)習(xí)
    2015-11-11
  • Unity3D Shader實現(xiàn)掃描顯示效果

    Unity3D Shader實現(xiàn)掃描顯示效果

    這篇文章主要為大家詳細介紹了Unity3D Shader實現(xiàn)掃描顯示效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • C# WinForm創(chuàng)建Excel文件的實例

    C# WinForm創(chuàng)建Excel文件的實例

    下面小編就為大家?guī)硪黄狢# WinForm創(chuàng)建Excel文件的實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • VS2010寫的程序在自己電腦可以運行、其他電腦上不能運行的解決方案

    VS2010寫的程序在自己電腦可以運行、其他電腦上不能運行的解決方案

    自己用Visual Studio 2010 旗艦版寫了一個軟件,在自己電腦上運行完全沒有問題,但是拷貝到其他人電腦上之后不管雙擊還是以管理身份運行,均沒有反應(yīng),進程管理器中相關(guān)進程也只是一閃而過
    2013-04-04
  • C#實現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法

    C#實現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法

    這篇文章主要介紹了C#實現(xiàn)在啟動目錄創(chuàng)建快捷方式的方法,涉及C#快捷方式的創(chuàng)建技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-09-09
  • 使用Deflate算法對文件進行壓縮與解壓縮的方法詳解

    使用Deflate算法對文件進行壓縮與解壓縮的方法詳解

    本篇文章是對使用Deflate算法對文件進行壓縮和解壓縮的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • WPF自定義控件的實現(xiàn)

    WPF自定義控件的實現(xiàn)

    本文主要介紹了WPF自定義控件的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • C#使用Post調(diào)用接口并傳遞json參數(shù)

    C#使用Post調(diào)用接口并傳遞json參數(shù)

    這篇文章主要介紹了C#使用Post調(diào)用接口并傳遞json參數(shù),具有很好的參考價值,希望對大家有所幫助。
    2022-06-06
  • C#中常用的正則表達式實例

    C#中常用的正則表達式實例

    正則表達式在程序設(shè)計中有著重要的位置,它經(jīng)常被用于處理字符串信息,下面是C#中常用的正則表達式實例,感興趣的朋友一起看看吧
    2016-10-10

最新評論

灵台县| 柳江县| 郯城县| 平昌县| 怀来县| 济南市| 永定县| 平谷区| 南陵县| 张掖市| 荔波县| 宣化县| 黔江区| 合江县| 竹溪县| 喜德县| 广德县| 神木县| 永和县| 乐安县| 获嘉县| 青河县| 武山县| 涪陵区| 宜黄县| 安仁县| 碌曲县| 中阳县| 崇文区| 无极县| 渭源县| 阿拉善盟| 旌德县| 双辽市| 南丰县| 威宁| 三原县| 威信县| 金溪县| 襄垣县| 阳高县|