[英]how to create custom scroll button for flow layout panel in c#
我必須為流布局面板項目創建向上和向下按鈕垂直滾動。我該怎么辦? 我將為 POS 填寫此表格。
我這樣做了,但它不起作用:我有很多按鈕,它們的高度為 87:我添加了代碼和圖片。
private void btnScrollUp_Click(object sender, EventArgs e)
{
flowLayoutPanel1.VerticalScroll.Value = flowLayoutPanel1.VerticalScroll.LargeChange-1 ;
flowLayoutPanel1.PerformLayout();
}
private void btnScrollDown_Click(object sender, EventArgs e)
{
flowLayoutPanel1.VerticalScroll.Value = flowLayoutPanel1.VerticalScroll.LargeChange+ 1;
flowLayoutPanel1.PerformLayout();
}
或者,您可能只想將“AutoScroll”設置為 false,以下代碼實現了正確的編程滾動:
public Form1()
{
InitializeComponent();
flowLayoutPanel1.AutoScroll = false;
}
public int scrollValue = 0;
public int ScrollValue
{
get
{
return scrollValue;
}
set
{
scrollValue = value;
if (scrollValue < flowLayoutPanel1.VerticalScroll.Minimum )
{
scrollValue = flowLayoutPanel1.VerticalScroll.Minimum;
}
if (scrollValue > flowLayoutPanel1.VerticalScroll.Maximum)
{
scrollValue = flowLayoutPanel1.VerticalScroll.Maximum;
}
flowLayoutPanel1.VerticalScroll.Value = scrollValue;
flowLayoutPanel1.PerformLayout();
}
}
private void Add_Control(object sender, EventArgs e)
{
flowLayoutPanel1.Controls.Add(new Button(){Width = flowLayoutPanel1.Width, Height = 87});
}
private void UpClick(object sender, EventArgs e)
{
ScrollValue -= flowLayoutPanel1.VerticalScroll.LargeChange;
}
private void DownClick(object sender, EventArgs e)
{
ScrollValue += flowLayoutPanel1.VerticalScroll.LargeChange;
}
flowLayoutPanel1.HorizontalScroll.Value += 60;
flowLayoutPanel1.PerformLayout();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.