星期日, 6月 12, 2016

[C#] Parent 屬性

看到論壇討論才注意到,原來 WinForm 控件上,都有 Parent Property 可以呼叫,簡單紀錄一下

簡易測試:找 Label 的 Parent Property,並顯示在 Label.Text 上

WinForm Layout:放進三個 Label 控件和兩個 Panel 控件,Panel 有顯示外框來識別

[C#] Parent Property-2

C# Code
namespace ParentProperty
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            label1.Text = FindParent(label1);
            label2.Text = FindParent(label2);
            label3.Text = FindParent(label3);
        }

        private string FindParent(Control ctl)
        {
            StringBuilder builder = new StringBuilder();
            Control loop = ctl.Parent;
            while (loop != null)
            {
                builder.AppendLine($"控件型別:{loop.GetType()} - 控件名稱:{loop.Name}");
                loop = loop.Parent;
            }
            return builder.ToString();
        }
    }
}
執行結果

[C#] Parent Property-1

沒有留言:

張貼留言