限制每行输入的字符数。以下为源代码(textBox1命名保留为缺省为方便您测试使用)
有用的两个函数:
1、计算字符串的出现次数
2、计算英汉混合字符串的字节数
1
private void textBox1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
2
{
3
const int MaxLength=10;
4
char chrKeyIn;
5
string strLastCurrentFocus,strCurrentLine;
6
int intCurrentLine;
7
//计算当前行号
8
strLastCurrentFocus=this.textBox1.Text.Substring(0,this.textBox1.SelectionStart);
9
intCurrentLine=RepeatNumber (strLastCurrentFocus,"\r\n");
10
//计算当前行的字节数
11
chrKeyIn=e.KeyChar;
12
strCurrentLine=this.textBox1.Lines[intCurrentLine-1]+chrKeyIn;
13
if(LenB(strCurrentLine)>MaxLength)
14
{
15
if(false==System.Char.IsControl(chrKeyIn) )
16
e.Handled =true;
17
}
18
}
19
//计算字符串的出现次数
20
private int RepeatNumber(string strSource,string strFind)
21
{
22
int intLastFind;
23
int intNumber;
24
intNumber=1;
25
intLastFind=strSource.IndexOf(strFind);
26
while(intLastFind>0)
27
{
28
intNumber++;
29
intLastFind=strSource.IndexOf(strFind,intLastFind+1);
30
}
31
return intNumber;
32
}
33
//计算英汉混合字符串的字节数
34
private int LenB(string strSource)
35
{
36
int intLength;
37
char[] aryLenB=strSource.ToCharArray() ;
38
intLength=0;
39
foreach(char chrLenB in aryLenB)
40
{
41
if((int)chrLenB>255)
42
intLength+=2;
43
else
44
intLength++;
45
}
46
return intLength;
47
}

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47
