panel里控件问题

kakalala 2003-10-15 10:42:06
一个panel里有n个label和textbox,如何定位到每个textbox,点击一个按纽时把每个textbox的readonly属性置为true
...全文
45 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
kakalala 2003-10-15
  • 打赏
  • 举报
回复
bpy(历为) 谢谢你。
bpy 2003-10-15
  • 打赏
  • 举报
回复
加一点东西 ((TextBox)this.panel1.Controls[i]).ReadOnly = true;
就可以了。
kakalala 2003-10-15
  • 打赏
  • 举报
回复
都沉下去还是没有解答,我的分没有了
kakalala 2003-10-15
  • 打赏
  • 举报
回复
写错了,是text、vsiable等
kakalala 2003-10-15
  • 打赏
  • 举报
回复
hillseok(山海经) this.panel1.Controls[i].! 没有readonly属性,这里找到的controls应该是所有控件的都有的属性,如textbox、visable等,但没有readonly属性
hillseok 2003-10-15
  • 打赏
  • 举报
回复
如你所说
for(int i = 0; i < this.panel1.Controls.Count; i++)
{
if(System.Object.ReferenceEquals(this.panel1.Controls[i].GetType(),typeof( System.Windows.Forms.TextBox)))
this.panel1.Controls[i].ReadOnly = true;
}
kakalala 2003-10-15
  • 打赏
  • 举报
回复
这样手动很麻烦的,而且以后你要是再添加textbox的话要改动的也多,我是想一次遍历完panel里的textbox ,如:

for(int i = 0; i < this.panel1.Controls.Count; i++)
{
if(System.Object.ReferenceEquals(this.panel1.Controls[i].GetType(),typeof( System.Windows.Forms.TextBox)))
this.panel1.Controls[i].Text = "";
}
这样的话就可以把textbox的每个直置空,但怎么才能让它为只读的呢?
suguanqun 2003-10-15
  • 打赏
  • 举报
回复
每个textbox 都有ID(如textbox1)的,所以用textbox1.readonly=true;就行了.和panel没有关系的,不知道你是不是这个意思。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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