有人遇到过这个问题没~~~~~~~~~~~~~真是遇到鬼了,跑来问下...(都进来看哈)

wxm3630478 2009-07-03 04:28:12
    List<Control> m_FormControls = new List<Control>(); //添加了3个控件进去
private void Btn_Back_Click(object sender, EventArgs e)
{
for (int i = 0; i < this.m_FormCount; i++)
{
//this.m_FormControls[2].Visible = (i == (this.m_CurrentFormIndex + 1)); //先是这么写的,以为这么写有什么Bug

//后来改成这个样子 还是不行
if (i == this.m_CurrentFormIndex + 1)
{
this.m_FormControls[i].Visible = true; //执行了这步 ,但是this.m_FormControls[i].Visible仍然是false
}
else
{
this.m_FormControls[i].Visible = false;
}
}
}
this.m_CurrentFormIndex++;
this.Lbl_PageNow.Text = (this.m_CurrentFormIndex + 1).ToString();
OnPageChanged(this, new EventArgs());
this.Btn_Back.Enabled = !(this.m_CurrentFormIndex == 0);
this.Btn_Next.Enabled = !(this.m_CurrentFormIndex == this.m_FormCount - 1);



给大家看了这么多,大家应该还没明白是什么意思...............

我的问题: 我单步调试,明明后面是个true,赋值完后this.m_FormControls[i].Visible仍然是个false,气死我了,要吐血了,给老大看 ,他也不知道咋回事.......

单击button第一次时没问题(就是显示第二个控件正常,显示第3个时显示不出来,默认是显示第一个控件),单击第二次是就出现上面那个问题

我把它改成 this.m_FormControls[2].Visible = true; 又没问题.....

不知道有人遇到过没.........
...全文
33 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyoubaidu 2009-07-03
  • 打赏
  • 举报
回复
up
wxm3630478 2009-07-03
  • 打赏
  • 举报
回复
谢谢 给为 结贴了.......
zhangmeiqingking 2009-07-03
  • 打赏
  • 举报
回复
没看明白!
深海之蓝 2009-07-03
  • 打赏
  • 举报
回复
恭喜楼主自己找出错误
wxm3630478 2009-07-03
  • 打赏
  • 举报
回复
晕了.............自己的问题...........一下子突然想明白了

集合里面放了3个groupBox 我是直接拖上去的 把第3个groupBox拖到第二个groupBox里面了 ,拉的一样大
groupbox3 成了groupbox2的子控件了 ,肉眼没看出来,后来七一拉八一拉 看出来哒.......

父容器的Visibile 是false 那么 子的 也是false了..

哎 害死我了........... 让大家见笑啦.....

, , ,
LQknife 2009-07-03
  • 打赏
  • 举报
回复
是不是this.m_FormControls[i].Visible的父控件的visible为false
a12321321321312321 2009-07-03
  • 打赏
  • 举报
回复
我看明白了楼主说什么,既然楼主说 改成this.m_FormControls[2].Visible = true; 又没问题那肯定

还是你写的程序有问题。楼主取个断点一步一步调试下,肯定会找到错误的。

desegou 2009-07-03
  • 打赏
  • 举报
回复
你执行到那行代码的下一行,鼠标移到visible上还是显示false?
messi_yang 2009-07-03
  • 打赏
  • 举报
回复
沒有碰見過
幫頂~~~
qldsrx 2009-07-03
  • 打赏
  • 举报
回复
你这个this.m_CurrentFormIndex++;是放哪里执行的?我怎么看你在函数外部++,这样居然不会报错啊。
du9232 2009-07-03
  • 打赏
  • 举报
回复
没看到鬼,呵呵~~~
zgke 2009-07-03
  • 打赏
  • 举报
回复
你说你要什么效果把...没看明白...

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧