Подскажите как прокрутить Panel (роликом мыши) через AutoScroll широким шагом, чтобы ширина Panel делилась на две части. К примеру ширина Panel до сужения равна 800 точек, и должна поделиться на 2 при прокрутке. Чтобы в сжатом состоянии на 400 точек, сразу попадать на вторую часть Panel
Растянутое состояние (для добавления чекбоксов)
Сжатое состояние (какими должны быть размеры приложения)
Можно сделать вот так:
private void Panel1_MouseWheel(object sender, MouseEventArgs e)
{
var stepLength = panel1.Width;
if (e.Delta < 0)
{
if (panel1.HorizontalScroll.Value + stepLength < panel1.HorizontalScroll.Maximum)
{
panel1.HorizontalScroll.Value += stepLength;
}
else
{
panel1.HorizontalScroll.Value = panel1.HorizontalScroll.Maximum;
}
}
if (e.Delta > 0)
{
if (panel1.HorizontalScroll.Value - stepLength > panel1.HorizontalScroll.Minimum)
{
panel1.HorizontalScroll.Value -= stepLength;
}
else
{
panel1.HorizontalScroll.Value = panel1.HorizontalScroll.Minimum;
}
}
}
Будет лишний скролл в конце/начале прокрутки если соотношение будет не ровно 2, а, например, 2.1
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Если какие-то средства, которые позволяют писать запрос(Например, всякие JOIN'ы) к ADONET DataSet и получить в результате какую-нибудь вьюху?
Как правильно поступить в ситуации, в методе находится ряд условий, если они удовлетворяются, то возвращается значение из словаряКак поступить,...
Есть поисковой запрос,который выводит значения из базы данныхПроблема в том,что вхождений может быть огромное количество и поэтому хочу...