我的代码
private void Form1_Load(object sender, EventArgs e)
{
string txt = "你好你好你好你好你好 0123456789012345678901234567890123456789012345678912";
string txt2="";
for (int i = 0; i <= txt.Length / 10; i++)
{
if (i == txt.Length / 10)
{
txt2 += txt.Substring(i * 10, txt.Length-(i*10));
}
else
{
txt2 += txt.Substring(i * 10, 10) + Environment.NewLine;
}
}
label1.Text = txt2;
}
应为txt太长了 在窗体上显示不全
所以我通过换行来解决但是这又遇到问题了
我做的10个字符换一行
但是C# 汉字也是一个字符
所以显示的效果就变成第一行显示10个汉字
第二行以后都显示10个字母
第一行就比后面的宽了一倍我想要的效果是第一行显示5个汉字
第二行在显示5个
以后的每行显示10个字母 这样每行的宽度就一样了
private void Form1_Load(object sender, EventArgs e)
{
string txt = "你好你好你好你好你好 0123456789012345678901234567890123456789012345678912";
string txt2="";
for (int i = 0; i <= txt.Length / 10; i++)
{
if (i == txt.Length / 10)
{
txt2 += txt.Substring(i * 10, txt.Length-(i*10));
}
else
{
txt2 += txt.Substring(i * 10, 10) + Environment.NewLine;
}
}
label1.Text = txt2;
}
应为txt太长了 在窗体上显示不全
所以我通过换行来解决但是这又遇到问题了
我做的10个字符换一行
但是C# 汉字也是一个字符
所以显示的效果就变成第一行显示10个汉字
第二行以后都显示10个字母
第一行就比后面的宽了一倍我想要的效果是第一行显示5个汉字
第二行在显示5个
以后的每行显示10个字母 这样每行的宽度就一样了
解决方案 »
- repositoryItemLookUpEdit1 会用的高手进~
- 有没有代码可以 在C#窗体中已知的位置上(知道坐标)自动生成一个label 或者textbox 如何清除用gdi+画出来的直线 (用代码)
- 求一个递减比例加程的算法!谢谢
- c#与UNIX通过UDP通讯问题,<STX><EXT>问题急需解答
- xml 处理问题~!
- &符号的疑惑
- 求助!能不能帮忙把下面几小段Delphi语句转换成C#语句? 分不够可以再给.
- MCSD 谢谢了:有人考试:MCAD/MCSD 吗。我想知道,怎么报考试,怎么去买教材。
- 求助!一个比较冷僻的c#问题
- 哪里有C#的完整工程下载?就好像vc有vckbase,有很多例子。c#有没有对应的网站?
- C# RSA Python
- modPow 是什么运算
string txt2 = "";
int a = 0;
for (int i = 0; i <txt.Length; i++)
{
string str = txt.Substring(i, 1);
txt2 = txt2 + str;
if (Regex.IsMatch(str, @"^[\u4e00-\u9fa5],{0,}$"))
{
a += 2;
}
else
{
a += 1;
}
if (a % 10==0)
{
txt2 = txt2 + Environment.NewLine;
}
}
label1.Text = txt2;
label1.AutoSize=false;
至于Size可以定一个适合的大小,这样是自动换行的。