Bug 2839 - TextBoxBase's PreferredHeight property is used inconsistently as outer height or client height
Summary: TextBoxBase's PreferredHeight property is used inconsistently as outer height...
Alias: None
Product: Class Libraries
Classification: Mono
Component: Windows.Forms ()
Version: 2.10.x
Hardware: All All
: --- normal
Target Milestone: Untriaged
Assignee: Bugzilla
Depends on:
Reported: 2012-01-10 17:25 UTC by Michael Mudge
Modified: 2012-01-13 18:59 UTC (History)
2 users (show)

Is this bug a regression?: ---
Last known good build:

Patch to fix bug (1.95 KB, application/octet-stream)
2012-01-10 17:25 UTC, Michael Mudge

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on GitHub or Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Michael Mudge 2012-01-10 17:25:49 UTC
Created attachment 1164 [details]
Patch to fix bug

When TextBoxes have larger nonclient areas, the bottom of the text gets cut-off due to the textbox setting its Height to the PreferredHeight [in some areas], which is calculated from the font - it should be the client height.

This also causes unnecessary height updates because update-checks always find a mismatch with client height but update the non-client height.

I've found all uses of TextBoxBase.PreferredHeight and treated PreferredHeight as non-client height (as seen in .NET behavior).  The patch is attached.

PreferredHeight contains some magic numbers that were compensating statically for this miscalculation; Windows Forms textboxes may end up slightly taller or shorter than before.

This bug was found in Mono 2.10.2.
Comment 1 Miguel de Icaza [MSFT] 2012-01-13 18:59:31 UTC