set {\r
if (_scrollX == value)\r
return;\r
- _scrollX = value;\r
+ if (value < 0.0)\r
+ _scrollX = 0.0;\r
+ else if (value > Child.Slot.Width - ClientRectangle.Width)\r
+ _scrollX = Math.Max(0.0, Child.Slot.Width - ClientRectangle.Width);\r
+ else\r
+ _scrollX = value;\r
ValueChanged.Raise(this, new ValueChangeEventArgs("ScrollX", _scrollX));\r
RegisterForRedraw();\r
}\r
set {\r
if (_scrollY == value)\r
return;\r
- _scrollY = value;\r
+ if (value < 0.0)\r
+ _scrollY = 0.0;\r
+ else if (value > Child.Slot.Height - ClientRectangle.Height)\r
+ _scrollY = Math.Max(0.0,Child.Slot.Height - ClientRectangle.Height);\r
+ else\r
+ _scrollY = value;\r
ValueChanged.Raise(this, new ValueChangeEventArgs("ScrollY", _scrollY));\r
RegisterForRedraw();\r
}\r
return;\r
\r
if (VerticalScrolling )\r
- {\r
ScrollY -= e.Delta * ScrollSpeed;\r
-\r
- if (ScrollY < 0.0)\r
- ScrollY = 0.0;\r
- else if (ScrollY > Child.Slot.Height - ClientRectangle.Height)\r
- ScrollY = Child.Slot.Height - ClientRectangle.Height;\r
-\r
- }\r
if (HorizontalScrolling )\r
- {\r
ScrollX -= e.Delta * ScrollSpeed;\r
-\r
- if (ScrollX < 0.0)\r
- ScrollX = 0.0;\r
- else if (ScrollX > Child.Slot.Width - ClientRectangle.Width)\r
- ScrollX = Child.Slot.Width - ClientRectangle.Width;\r
- }\r
}\r
#endregion\r
\r