Relation between length and font-size of a string and width of a textbox

[亡魂溺海] 提交于 2019-12-13 03:34:14

问题


I've a field in a database, this field has a maximum length, and I want to set a textbox to the appropriate width. I'm creating the textboxes in runtime. How can I calculate the value of width property?

For example, if I have a field nvarchar(5) named IDClient, and the font-Size is 13, I want to create a texbox with a width enough to write 5 chars.


回答1:


Maybe should use TextRenderer.MeasureText(string, font).

Here a little sample which should might help you

        //Get this value from somewhere...
        TextBox textBox = new TextBox();
        int maxWidth = 10;
        int extraSpace = 3;

        //Create sample string
        StringBuilder sb = new StringBuilder(maxWidth);
        sb.Append('w', maxWidth);

        //Measure text 
        Size size = TextRenderer.MeasureText(sb.ToString(), textBox.Font);

        //Set width of TextBox to needed width
        textBox.Width = size.Width + extraSpace;



回答2:


Specify

input type='text' size='5' width='w' ........>

You can calculate w=num_characters * k. Where k is constant. First keep k = 15. And then do hit and trial until u find the best fit.



来源:https://stackoverflow.com/questions/1453327/relation-between-length-and-font-size-of-a-string-and-width-of-a-textbox

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!