作者dreamday1023 (也许我就是我,好好爱自己)
看板C_Sharp
标题Re: [问题] 如何执行大笔资料呢
时间Sun Jun 27 02:30:27 2010
首先 先感谢大大们的意见 小弟获益良多
目前我的档案跑大量应该是没啥太大的问题
只是当我产生大量资料时
比如说我要动态产生5000个textbox 跟 label时
好像每次都在 建立第3317资料时就发生了错误
以下是我的程式码
private int b;
private int a;
private void button1_Click(object sender ,EventArgs e)
{
for(int i=0;i<5000;i++)
{
this.SuspendLayout();
Textbox tb=new Textbox();
Label L=new Label();
tb.Name="textbox"+b.ToString();
L.Name="Label"+a.ToString();
tb.Location=new System.Drawing.Point(i,i);
L.Location=new System.Drawing.Point(i,i);
tb.Size=new System.Drawing.Size(30,30);
L.Size=new System.Drawing.Size(30,30);
this.Controls.Add(tb);
this.Controls.Add(L);
this.ResumeLayout(false);
}
}
想请问大大 我是哪做错了呢
感谢大大的收看
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.64.103.120
1F:→ u9211138:错误讯息...? 06/27 02:53
2F:推 liaommx:为什麽会需要动态产生5000个textbox呢?XD 06/27 10:14
3F:→ liaommx:我的想法是,产生一个textbox,利用变数方式填入textbox 06/27 10:14
4F:→ liaommx:再去呼叫执行副程式抓取此textbox职执行 06/27 10:15
5F:→ liaommx:这样就可以避免大量动态产生的问题. 06/27 10:15
6F:→ proach:一些小事:suspend与resume可以拿到回圈外 06/27 10:52
7F:→ proach:全部产生完毕後,使用Controls.AddRange一次加入 06/27 10:52
8F:→ proach:这样效率高一些 06/27 10:53
9F:→ proach:however, 5000个textbox...我猜萤幕更新效率不高吧 :P 06/27 10:53
10F:→ dreamday1023:5000笔textbox是因为我相希望可以在介面上呈现我输入 06/27 11:29
11F:→ dreamday1023:的资料 之後也许会再跑1万笔吧 06/27 11:31
12F:→ proach:如果资料不多样化,也许用bmp自己绘字上去速度更快? 06/27 11:42
13F:→ dreamday1023:这是我发生的错误 在 this.Controls.Add(tb)这行 06/27 11:43
14F:→ dreamday1023:产生了"建立视窗控制代码时发生错误" 请问大大这是 06/27 11:45
15F:→ dreamday1023:啥意思 06/27 11:45
17F:→ andymai:没有办法让人这样无限制的取用~另外就设计面来看~弄了一堆 06/27 12:10
18F:→ andymai:textbox在上面~真的有意义?如果是要绘图就直接用绘图元件~ 06/27 12:11
19F:→ andymai:应该不至於真的要人在5000个控制项里找东西填吧... 06/27 12:11
20F:→ dreamday1023:其实我只是建立textbox然後再利用档案输入的方式 06/27 12:28
21F:→ dreamday1023:让每个点知道textbox内资料是多少 06/27 12:30
22F:推 horngsh:用5000个变数或物件存不是更好? 06/27 12:42
23F:→ makiyolove:textbox多行显示 就好 不用产生这麽多吧 06/28 11:58
24F:→ ssccg:如果要呈现非常多的资料,用DataGridView比较好 06/28 20:28
25F:→ ssccg:TextBox主要是用来「填」「一项」资料用的吧 06/28 20:34
26F:推 horngsh:的确是填"一项"资料用的..原POST基楚要打稳些..加油. 06/29 07:13