[英]Handling events triggered from controls programmatically added to the page?
[英]Making a slideshow viewer, handling events fired from arbitrary controls
我正在扩展图像查看器以支持幻灯片显示功能。 我使用了一个split container
将主表单分为两个面板。
每个面板都支持拖放。 当我将图像文件放入缩略图面板时,它应该创建一个缩略图并将其显示在面板上,从顶部开始,然后随着更多图像的下降而逐渐向下。 默认情况下,第一个可用图像将显示在右侧面板上。
当我选择另一个缩略图时,查看器将显示完整尺寸的图像。
什么是实现此缩略图列表的好方法? 我已经浏览了可用的控件列表,但无法确定哪个控件最适合此控件。
我当时在考虑动态创建PictureBox对象,但是在注册Click事件后如何识别事件发自哪个PictureBox的过程似乎并不明显。
我正在寻找两种可能的答案之一
您可以将事件处理程序绑定为多个控件,并通过“ sender”参数进行标识。 它始终指向事件发送者。
void OnClick(object sender, KeyEventArgs e) {
PictureEdit editor = (PictureEdit)sender;
}
Sub OnClick(ByVal sender As Object, ByVal e As KeyEventArgs)
Dim editor as PictureEdit = CType(sender, PictureEdit)
End Sub
或者,您可以创建自己的控件(不是很复杂),将控件划分为显示图像的矩形区域。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.