【问题标题】:unable to find {Microsoft.VisualBasic.PowerPacks.RectangleShape} control in form无法在表单中找到 {Microsoft.VisualBasic.PowerPacks.RectangleShape} 控件
【发布时间】:2015-06-17 12:35:20
【问题描述】:

IDE:VS 2010,c# .net 4.0,Winforms

据我们所知,我们可以通过以下方式使用名称找到控件

面板控制示例:

Control[] c = this.Controls.find("panel1", true);  
if(c.length>1)
{
  Panel p = c[0] as Panel;
}  

上面的代码正在运行。

我用于矩形形状控制的代码相同,命名空间是

{Microsoft.VisualBasic.PowerPacks.RectangleShape}  

我在名为“rectangleShapeMonthCalender”的表单上添加了矩形

Control[] c = this.Controls.find("rectangleShapeMonthCalender", true);  
if(c.length>1) //here I am getting length of control array 0, i.e control not found.
{
  Microsoft.VisualBasic.PowerPacks.RectangleShape shape= c[0] as Panel;
}    

你能告诉我如何找回驻留在

中的控制吗?
"Microsoft.VisualBasic.PowerPacks"   

命名空间,所以我可以解决上面的问题。

【问题讨论】:

  • 你的控件名称是rectangleShapeMonthCalender1吗?
  • 我的控件名称是 rectangleShapeMonthCalender,它是 Microsoft.VisualBasic.PowerPacks.RectangleShape 的类型

标签: c# .net winforms visual-studio


【解决方案1】:

矩形、椭圆等形状都存在于 shapecontainers 中,因此每当我们在表单中添加矩形时,shapecontainer 都会自动添加到该表单中。

要找到那个矩形,请使用以下代码:

         int totalItems = shapeContainer1.Shapes.Count;
            for (int i = 0; i < totalItems; i++)
            {
                Shape s = container.Shapes.get_Item(i) as Shape;

            }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-19
    • 1970-01-01
    • 2010-10-11
    • 2012-05-18
    相关资源
    最近更新 更多