PictureBox控件是否具有除.Name之外的其他属性以进行标识

时间:2014-07-16 17:43:10

标签: c# picturebox

我在StackOverflow上找不到任何能回答我问题的内容。我希望我在这里说清楚。

我创建了一个Windows表单应用程序,它是游戏Yahtzee。我这样做很有趣,我差不多完成了。我想要完成的是以下内容。

当用户想要保存特定类别的分数时,他们只需点击与其选择的类别相关联的图片框。执行一些验证和方程,然后是display()方法。此方法记录GUI的文本区域,他们只得分了多少分。

我正在尝试使日志记录更容易阅读和更有意义。以下是我想要完成的前后。

当前代码

... AppendText(“\ nscored:”+ NewYahtzee.Rollscore +“指向”+((PictureBox)发件人).Name)

当前输出

为pictureBoxYahtzee获得50分

我想要的输出

为你的Yahtzee得分50分

所以我试图用友好/显示名称替换控件的名称。是否有这样的属性或方法?

谢谢!

2 个答案:

答案 0 :(得分:2)

正如上述两位评论者所说。

1。您可以使用.Tag的{​​{1}}属性。

当您想要向PictureBox分配一些信息时,只需执行

PictureBox

有趣的是,String info = "MyInfo"; pictureBox1.Tag = (object)info; .Tag,您可以在object属性中添加任何内容。因此,您可以创建一个填充了信息的自定义类,并将其分配给.Tag

要检索您需要的信息,以确保.Tag值与您指定的类型相同,所以请按照上面的示例

.Tag

2。您拥有的另一个选项是扩展if(pictureBox1.Tag is String) { String info = (String)pictureBox1.Tag; } 类并向该类添加公共属性。

PictureBox

然后找到您class PictureBoxEx : PictureBox { public String info { get; set; } public PictureBoxEx() { } } 对象的定义,只需将其类型从PictureBox更改为PictureBox,一切都应该相同,但现在除{{1} } reference具有公共字段PictureBoxEx

答案 1 :(得分:0)

1)您可以像上面所述制作自己的派生类。

2)您可以暂时更改控件的名称。

3)你可以将它存储在其他地方(也许是设置)。

我只想将属性添加到pictureBox。

相关问题