如此写就会错误,请问要如何写呢?
foreach (LinkLabel lnk in this.Controls)
{
lnk.AutoSize=true;
}

解决方案 »

  1.   

    LinkLabel lnk;foreach (Control ctrl in this.Controls)

        lnk = ctrl as LinkLabel;
        if (lnk != null)
            lnk.AutoSize = true;
    }
      

  2.   

    给你combox遍历的代码,自己修改一下就好了,都一样的。
    public void edit_crl(System.Windows.Forms.Control crl,ref System.Xml.XmlDocument xmldoc)
    {
    for(int i=0;i<crl.Controls.Count;i++)
    {
    if(crl.Controls[i].Controls.Count>0)
    {
    forOpen(crl.Controls[i],ref xmldoc);
    }
    if(crl.Controls[i].Name.Length<=3)
    {
    continue;
    }
    if(crl.Controls[i].Name.Substring(0,3)=="Cbx")
    {
    try
    {
    ComboBox cbx=crl.Controls[i] as ComboBox;
    // cbx.Text=xmldoc["Setup"][crl.Controls[i].Name].InnerText;
    for(int j=0;j<xmldoc["Setup"][crl.Controls[i].Name].ChildNodes.Count;j++)
    {
    cbx.Items.Add(xmldoc["Setup"][crl.Controls[i].Name].ChildNodes[j].InnerText);
    }
    }
    catch(Exception err)
    {
    string ii=err.ToString();
    }
    }
    这是读xml来对combox赋值的函数,lable比这还要简单点的
      

  3.   

    forOpen(crl.Controls[i],ref xmldoc);
    弄错了。fooOpen该成edit_crl(crl.Controls[i],ref xmldoc)