2

私はasp.netの初心者で、英語もあまり得意ではありません。とにかく、あなたがまだ私の主張を理解できることを願っています。ここで質問があります。基本的にアプリをLinkedInと統合しようとしているので、REST APIを使用しています。ボタンをクリックすると、ページがリダイレクトされてLinkedInからデータが要求され、XMLデータが返され、ユーザーの教育データが含まれています、ユーザーの教育データの数が不明であるため、テキスト ボックス コントロールを背後から生成することにしました ("C#")。私はこれをします :

            TextBox txt;
            int i;

            foreach (var element in person)
            {
                if ((element.Name == "first-name") || (element.Name == "last-name"))
                {
                    tbName.Text = tbName.Text + " " + element.Value;
                }
                else if (element.Name == "skills")
                {
                    i = 1;

                    foreach (var child in element.Elements())
                    {
                        if (child.Name == "skill")
                        {
                            txt = new TextBox();
                            txt.ID = "tbSkills" + i;
                            txt.Width = 200;
                            txt.Visible = true;
                            txt.ReadOnly = true;
                            txt.Text = child.Element("skill").Element("name").Value;
                            form1.FindControl("divMoreSkills").Controls.Add(txt);
                            i++;
                        }
                    }
                }
                else if (element.Name == "industry")
                {
                    tbIndustry.Text = element.Value;
                }
                else if (element.Name == "educations")
                {
                    i = 1;

                    foreach (var child in element.Elements())
                    {
                        if (child.Name == "education")
                        {

                            txt = new TextBox();
                            txt.ID = "tbEducations" + i;
                            txt.Width = 200;
                            txt.Visible = true;
                            txt.ReadOnly = true;
                            txt.Text = child.Element("school-name").Value;
                            form1.FindControl("divMoreEducations").Controls.Add(txt);
                            i++;
                        }
                    }
                }

            }
        }

私の質問は、以前に生成したテキスト ボックスを後で使用したい場合、C# はそれを認識しますか? 私が生成したコントロールには runat サーバー プロパティがなかったからです。

ありがとうございました。

4

2 に答える 2

2

以前に生成したテキスト ボックスを後で使用したい場合、C# はそれを認識しますか? 私が生成したコントロールには runat サーバー プロパティがなかったからです。

runat="server"コード ビハインドからサーバー側コントロールを作成するため、を指定する必要はありません。サーバー側のコントロールを識別するためにページrunat="server"で使用されます。aspx

それを見つけるには、これらのコントロールがポスト バックで使用できることを確認する必要があります。で div を見つけるように、それらを見つけることができますform1Page.FindControlを使用する

于 2013-04-01T07:52:20.570 に答える
0

はい、そうします..次のような追加のコントロールを使用できます

TextBox txt = (TextBox )Page.FindControl("tbSkills0");
于 2013-04-01T07:50:32.687 に答える