以名称获取控制手柄
|
我有一个带有几个PictureBox的UserControl。这些是UserControl上的唯一控件。所有PictureBox都被命名为\'pbx \',再加上一种颜色,例如\'pbxGrey \'或\'pbxBlack \'。我有一个方法可以选择PictureBoxes之一并更改BorderStyle以表示它已被选中。我尝试使用this.Controls [\“ pbx \” + color]方法,但是没有用于设置BorderStyle的属性。
public void SelectColor(string color)
{
ClearBorderSyles();
this.Controls[\"pbx\" + color]. //No BorderStyle property
SelectedColor = color;
}
我也尝试过这样做以获得相同的属性:
public void SelectColor(string color)
{
ClearBorderSyles();
Picturebox handle = new PictureBox();
handle = this.Controls[\"pbx\" + color];
SelectedColor = color;
}
在此示例中,VS说我不能将控件隐式转换为PictureBox。因此,我需要知道的是如何获得控件的句柄,以便可以更改BorderStyle?请以C#或必要时以VB回答。谢谢。
没有找到相关结果
已邀请:
1 个回复
峨躬坎抬焚
要么:
当然,在尝试分配或使用控件之前,应检查控件是否为null。 但是你明白了。