public void SetMaxHorizontalScroll()
{
CalcMaxCharWidth();
int CharWidth = View.CharWidth;
if (CharWidth == 0)
CharWidth = 1;
if (View.ClientAreaWidth/CharWidth < 0)
{
hScroll.Maximum = 1000;
return;
}
hScroll.LargeChange = View.ClientAreaWidth/CharWidth;
try
{
int max = 0;
for (int i = View.FirstVisibleRow;
i <
Document.VisibleRows.Count;
i++)
{
if (i >= View.VisibleRowCount + View.FirstVisibleRow)
break;
string l = Document.VisibleRows[i].IsCollapsed ? Document.VisibleRows[i].VirtualCollapsedRow.Text : Document.VisibleRows[i].Text;
l = l.Replace("\t", new string(' ', TabSize));
if (l.Length > max)
max = l.Length;
}
int pixels = max*MaxCharWidth;
int chars = pixels/CharWidth;
if (hScroll.Value <= chars)
hScroll.Maximum = chars;
}
catch
{
hScroll.Maximum = 1000;
}
}