Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 收集表单上的所有文本框,为每个文本框生成GUID_Asp.net_C# 4.0 - Fatal编程技术网

Asp.net 收集表单上的所有文本框,为每个文本框生成GUID

Asp.net 收集表单上的所有文本框,为每个文本框生成GUID,asp.net,c#-4.0,Asp.net,C# 4.0,我在一个网络表单上有10个文本框,我想用C#为每个文本框分配单独的guid。你可以 static class ControlExtension { public static IEnumerable<Control> GetAllControls(this Control parent) { foreach (Control control in parent.Controls) {

我在一个网络表单上有10个文本框,我想用C#为每个文本框分配单独的guid。

你可以

static class ControlExtension
    {
        public static IEnumerable<Control> GetAllControls(this Control parent)
        {
            foreach (Control control in parent.Controls)
            {
                yield return control;
                foreach (Control descendant in control.GetAllControls())
                {
                    yield return descendant;
                }
            }
        }
    }
静态类控制扩展
{
公共静态IEnumerable GetAllControls(此控件父控件)
{
foreach(父控件中的控件)
{
收益率控制;
foreach(Control.GetAllControls()中的控件子体)
{
产量回报后代;
}
}
}
}
打电话

this.GetAllControls().OfType<TextBox>().ToList().ForEach(t => t.ID = Guid.NewGuid().ToString());
this.GetAllControls().OfType().ToList().ForEach(t=>t.ID=Guid.NewGuid().ToString());
类似于

protected void Button1_Click(object sender, EventArgs e)
{
    foreach (Control MyControl in Form1.Controls)
    {
        TextBox MyTextBox = MyControl as TextBox;

        if (MyTextBox != null)
        {
            MyTextBox.ID = Guid.NewGuid().ToString();
        }
    }

非常感谢。我也会试试这个。我很感激。