By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
434,701 Members | 1,970 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 434,701 IT Pros & Developers. It's quick & easy.

Multline TextBox question

P: n/a
I have a multiline textbox.

The size of the text box should be 75 characters wide, and 5 lines in
height like this: -

<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->

I have used maxlength to limit the characters to 375 (75 X 5).

My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

Thankyou,

Gary.

Jan 4 '07 #1
Share this Question
Share on Google+
10 Replies


P: n/a

ga********@myway.com wrote:
My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.
There are Columns and Rows properties.

Jan 4 '07 #2

P: n/a
There are? They don't display in the property pane, and when i try to
access them programmatically using textbox.Columns or textbox.Rows they
aren't accessible either?

Can you tell me how I access these properties?

Thanks,

Gary.

marss wrote:
ga********@myway.com wrote:
My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

There are Columns and Rows properties.
Jan 4 '07 #3

P: n/a

ga********@myway.com wrote:
There are? They don't display in the property pane, and when i try to
access them programmatically using textbox.Columns or textbox.Rows they
aren't accessible either?

Can you tell me how I access these properties?

Thanks,

Gary.
If you writing Web Application :
http://msdn2.microsoft.com/en-us/lib...x.columns.aspx
http://msdn2.microsoft.com/en-us/lib...tbox.rows.aspx

But now I guess you write Win Application. :(

Jan 4 '07 #4

P: n/a
yes writing windows form application =(
marss wrote:
ga********@myway.com wrote:
There are? They don't display in the property pane, and when i try to
access them programmatically using textbox.Columns or textbox.Rows they
aren't accessible either?

Can you tell me how I access these properties?

Thanks,

Gary.

If you writing Web Application :
http://msdn2.microsoft.com/en-us/lib...x.columns.aspx
http://msdn2.microsoft.com/en-us/lib...tbox.rows.aspx

But now I guess you write Win Application. :(
Jan 4 '07 #5

P: n/a

ga********@myway.com wrote:
yes writing windows form application =(
Sorry for silly question.
Why don't you want to enter text in textbox in design time: 5 rows,
every with 75 characters, resize textbox to fit all characters and
remove entered text?

Jan 4 '07 #6

P: n/a
Thankyou marss that's a good idea. I have now populated the textbox
with sample text at runtime. How do i tell the textbox to resize to fit
this text, i can't find a resize method or anything simmilar, thanks...
Gary.

marss wrote:
ga********@myway.com wrote:
yes writing windows form application =(

Sorry for silly question.
Why don't you want to enter text in textbox in design time: 5 rows,
every with 75 characters, resize textbox to fit all characters and
remove entered text?
Jan 4 '07 #7

P: n/a
Hi Gary,

You can get an approximation using the Graphics.MeasureString method (GDI+)
or TextRenderer.MeasureText method (GDI; 2.0 framework only). Simply call
CreateGraphics on the TextBox and pass the Graphics object to one of the
Measure* methods along with the specific text and Font.

If the Font isn't fixed-width then you should probably specify 375 upper
case "M" characters as the text to ensure maximum coverage for the
calculation. Otherwise, 375 of any printable character will do for a
fixed-width font.

Note: Don't be tempted to draw to the Graphics object retrieved from the
CreateGraphics method and don't forget to dispose of it after the text is
measured.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11*********************@11g2000cwr.googlegrou ps.com...
>I have a multiline textbox.

The size of the text box should be 75 characters wide, and 5 lines in
height like this: -

<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->

I have used maxlength to limit the characters to 375 (75 X 5).

My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

Thankyou,

Gary.

Jan 4 '07 #8

P: n/a
Thankyou Dave. I will look at that. But I can't help thinking i've
asked the wrong question.
Perhaps I'll try again maybe someone can offer a solution.

My textbox takes text data from the user and then copies this to the
clipboard. I then switch to another application and paste this data
from the clipboard into the other application. The application
receiving the text demands that the text cover no more than 5 lines,
each line consisting of no more than 75 characters.

The reason I was trying to resize the textbox was so that it looked the
same as it would look when it is pasted into this second programme.

But I realise now I need some way of enforcing that each line contains
only 75 characters, because even if I managed to size the textbox
exactly to 5x75 character lines, there is nothing stopping the user
from actually entering 1x375 line into this textbox. If i can find a
way of enoforcing that each line in the textbox has a maximum size of
75 characters I think this in itself will take care of the text being
displayed as it will look in the target application once it is pasted.

Any idea how I do this with the standard multiline textbox?

I was considering just creating 5 seperate text box, and playing around
with their events to try to make them act as one text box, do you think
this will be a better approach?

Thankyou Experts,

Gary.
Dave Sexton wrote:
Hi Gary,

You can get an approximation using the Graphics.MeasureString method (GDI+)
or TextRenderer.MeasureText method (GDI; 2.0 framework only). Simply call
CreateGraphics on the TextBox and pass the Graphics object to one of the
Measure* methods along with the specific text and Font.

If the Font isn't fixed-width then you should probably specify 375 upper
case "M" characters as the text to ensure maximum coverage for the
calculation. Otherwise, 375 of any printable character will do for a
fixed-width font.

Note: Don't be tempted to draw to the Graphics object retrieved from the
CreateGraphics method and don't forget to dispose of it after the text is
measured.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11*********************@11g2000cwr.googlegrou ps.com...
I have a multiline textbox.

The size of the text box should be 75 characters wide, and 5 lines in
height like this: -

<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->

I have used maxlength to limit the characters to 375 (75 X 5).

My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

Thankyou,

Gary.
Jan 5 '07 #9

P: n/a
Hi Gary,

That's a very difficult request. I tried to create a simple Multiline
solution or multiple TextBox solution but there are just too many things to
consider.

In either case if you want to try it by handling the KeyDown event, for
instance, then you'll have to consider placement of the text cursor, length
of the selection, keys such as Delete, Backspace, Enter, the control keys
and undo, cut, copy and paste (Ctrl+Z, Ctrl+X, Ctrl+C and Ctrl+V,
respectively). Anything less and end-users might be surprised by the
behavior of your TextBox, considering it buggy.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11**********************@51g2000cwl.googlegro ups.com...
Thankyou Dave. I will look at that. But I can't help thinking i've
asked the wrong question.
Perhaps I'll try again maybe someone can offer a solution.

My textbox takes text data from the user and then copies this to the
clipboard. I then switch to another application and paste this data
from the clipboard into the other application. The application
receiving the text demands that the text cover no more than 5 lines,
each line consisting of no more than 75 characters.

The reason I was trying to resize the textbox was so that it looked the
same as it would look when it is pasted into this second programme.

But I realise now I need some way of enforcing that each line contains
only 75 characters, because even if I managed to size the textbox
exactly to 5x75 character lines, there is nothing stopping the user
from actually entering 1x375 line into this textbox. If i can find a
way of enoforcing that each line in the textbox has a maximum size of
75 characters I think this in itself will take care of the text being
displayed as it will look in the target application once it is pasted.

Any idea how I do this with the standard multiline textbox?

I was considering just creating 5 seperate text box, and playing around
with their events to try to make them act as one text box, do you think
this will be a better approach?

Thankyou Experts,

Gary.
Dave Sexton wrote:
>Hi Gary,

You can get an approximation using the Graphics.MeasureString method
(GDI+)
or TextRenderer.MeasureText method (GDI; 2.0 framework only). Simply
call
CreateGraphics on the TextBox and pass the Graphics object to one of the
Measure* methods along with the specific text and Font.

If the Font isn't fixed-width then you should probably specify 375 upper
case "M" characters as the text to ensure maximum coverage for the
calculation. Otherwise, 375 of any printable character will do for a
fixed-width font.

Note: Don't be tempted to draw to the Graphics object retrieved from the
CreateGraphics method and don't forget to dispose of it after the text is
measured.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11*********************@11g2000cwr.googlegro ups.com...
>I have a multiline textbox.

The size of the text box should be 75 characters wide, and 5 lines in
height like this: -

<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->

I have used maxlength to limit the characters to 375 (75 X 5).

My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

Thankyou,

Gary.

Jan 5 '07 #10

P: n/a
Ah i see what you mean. OK well I'll move on from that for now. The
project is a hobby project of mine, so I can do with the box being a
little buggy for now I guess! So will go with the five indiviudal text
box controls. And maybe in a year or so when i'm more advanced I can
write my own custom control for it!

Thanks again for your kind time and thought i'd be lost without it!

Gary-

Dave Sexton wrote:
Hi Gary,

That's a very difficult request. I tried to create a simple Multiline
solution or multiple TextBox solution but there are just too many things to
consider.

In either case if you want to try it by handling the KeyDown event, for
instance, then you'll have to consider placement of the text cursor, length
of the selection, keys such as Delete, Backspace, Enter, the control keys
and undo, cut, copy and paste (Ctrl+Z, Ctrl+X, Ctrl+C and Ctrl+V,
respectively). Anything less and end-users might be surprised by the
behavior of your TextBox, considering it buggy.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11**********************@51g2000cwl.googlegro ups.com...
Thankyou Dave. I will look at that. But I can't help thinking i've
asked the wrong question.
Perhaps I'll try again maybe someone can offer a solution.

My textbox takes text data from the user and then copies this to the
clipboard. I then switch to another application and paste this data
from the clipboard into the other application. The application
receiving the text demands that the text cover no more than 5 lines,
each line consisting of no more than 75 characters.

The reason I was trying to resize the textbox was so that it looked the
same as it would look when it is pasted into this second programme.

But I realise now I need some way of enforcing that each line contains
only 75 characters, because even if I managed to size the textbox
exactly to 5x75 character lines, there is nothing stopping the user
from actually entering 1x375 line into this textbox. If i can find a
way of enoforcing that each line in the textbox has a maximum size of
75 characters I think this in itself will take care of the text being
displayed as it will look in the target application once it is pasted.

Any idea how I do this with the standard multiline textbox?

I was considering just creating 5 seperate text box, and playing around
with their events to try to make them act as one text box, do you think
this will be a better approach?

Thankyou Experts,

Gary.
Dave Sexton wrote:
Hi Gary,

You can get an approximation using the Graphics.MeasureString method
(GDI+)
or TextRenderer.MeasureText method (GDI; 2.0 framework only). Simply
call
CreateGraphics on the TextBox and pass the Graphics object to one of the
Measure* methods along with the specific text and Font.

If the Font isn't fixed-width then you should probably specify 375 upper
case "M" characters as the text to ensure maximum coverage for the
calculation. Otherwise, 375 of any printable character will do for a
fixed-width font.

Note: Don't be tempted to draw to the Graphics object retrieved from the
CreateGraphics method and don't forget to dispose of it after the text is
measured.

--
Dave Sexton
http://davesexton.com/blog

<ga********@myway.comwrote in message
news:11*********************@11g2000cwr.googlegrou ps.com...
I have a multiline textbox.

The size of the text box should be 75 characters wide, and 5 lines in
height like this: -

<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->
<---75 characters-->

I have used maxlength to limit the characters to 375 (75 X 5).

My question is how to I specify the layout of the textbox to be 75
characters wide and 5 lines in height. The only size property i can see
takes a value in pixels, which isn't suitable here.

Thankyou,

Gary.
Jan 5 '07 #11

This discussion thread is closed

Replies have been disabled for this discussion.