请教各位在C#中vScrollBar的用法是怎样的呢???
具体的问题是想在picturebox中通过vScrollBar这个控件来拉动一张一张的显示图片,希望会的人能给出最理想的答案,谢谢!!!!!
2012-12-27 11:41
程序代码:
//VScrollBarForPictureBox.cs
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace VScrollForImage
{
public class VScrollBarForPictureBox : VScrollBar
{
#region 全局字段
private List<string> _imagesPath;
private PictureBox _pb;
#endregion
#region 公共属性
public PictureBox PictureContainer
{
set
{
_pb = value;
if (_pb.Tag == null)
return;
_imagesPath = (List<string>) _pb.Tag;
Maximum = _imagesPath.Count - 1;
}
}
#endregion
#region 重写方法
protected override void OnScroll(ScrollEventArgs se)
{
base.OnScroll(se);
if (_imagesPath == null) return;
_pb.Image = Image.FromFile(_imagesPath[se.NewValue]);
}
public override void Refresh()
{
base.Refresh();
if (_imagesPath == null) return;
Maximum = _imagesPath.Count - 1;
}
#endregion
}
}
//FormMain.cs
using System.Collections.Generic;
using System.Windows.Forms;
namespace VScrollForImage
{
public partial class FormMain : Form
{
#region 构造函数
public FormMain()
{
InitializeComponent();
Pb.Tag = new List<string> { "0.jpg", "1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg" };
Vsb.PictureContainer = Pb;
}
#endregion
}
}

2012-12-27 23:12
谢谢详尽的讲解,这个看起来很困难的样子,不过还是切努力的理解吧!!!!!总之谢谢你帮我解决了一个大问题!!!!
2012-12-28 10:52