What criteria must I consider when selecting one of these two controls?
Is there any difference between WPF TextBlock and TextBox?
Common to both TextBlocks and TextBoxes:
- Can be used to display text
- Can be set to specific Height and Width or be set to Auto so that they grow in size with the text.
- Can set font size, font type, font styling, to wrap and to range left, right or centred.
- Can have opacity set and have Pixel Shaders applied.
TextBlock:
- Used for displaying text more focused typographically.
- Can contain text set to different colors, fonts and sizes.
- The line height can also be increased from the default setting to give more space between each line of text.
- Text inside a TextBlock cannot be made selectable by the user.
TextBox:
- Used for displaying text more focused for content input or when content is needed to be made selectable by the user.
- Can only be set to one colour, one font size, one font type etc.
- Have fixed Line Spacing.
- Can also be set to a fixed height and width but also have scrollbars switched on to allow content to expand.
How is text focused? Oh, okay; it took me a while to understand that focused is describing the control, not the text. –
Pteranodon
TextBlock is more lightweight control for displaying text and TextBox is used when you require user input or edit existing text. Proof for mem usage.
Not sure if TextBlock is lighter than TextBox. Proof? –
Spanking
Hello Mike, sure - in terms of memory usage textbox is way heavier: s22.postimg.org/qse9gxfch/memusage.png –
Championship
In case the proof image at some future point is gone. Your example shows a 14x difference in memory usage. Code used GC.GetTotalMemory(true) before and after doing a stack.Children.Add on a new textblock and textbox respectively to check how much memory differed. –
Bookbinder
© 2022 - 2024 — McMap. All rights reserved.