找回密码
 立即注册

QQ登录

只需一步,快速开始

deppp

论坛元老

43

主题

123

帖子

4662

积分

论坛元老

积分
4662

活字格认证

deppp
论坛元老   /  发表于:2013-1-29 14:16  /   查看:5006  /  回复:3
请问如何能让某列按字节数设置最大位数?

默认的是maxLength是设置最大文字数,但是想按字节数去统计。

比如最大数设置为10:
那么半角文字能输入10个:1234567890
全角文字只能输入5个:一二三四五

3 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2013-1-29 15:20:00
沙发
回复 1楼deppp的帖子

无法直接设置,但是可以通过以下代码来限制:
  1.     private void Form1_Load(object sender, EventArgs e)
  2.     {            
  3.         fpSpread1.ActiveSheet.Columns[0].CellType = new FarPoint.Win.Spread.CellType.TextCellType();
  4.         fpSpread1.EditModeOn += new EventHandler(fpSpread1_EditModeOn);
  5.     }

  6.     void fpSpread1_EditModeOn(object sender, EventArgs e)
  7.     {
  8.         FarPoint.Win.Spread.CellType.GeneralEditor ge = fpSpread1.EditingControl as FarPoint.Win.Spread.CellType.GeneralEditor;
  9.         ge.KeyPress -= new KeyPressEventHandler(ge_KeyPress);
  10.         ge.KeyPress += new KeyPressEventHandler(ge_KeyPress);
  11.     }

  12.     void ge_KeyPress(object sender, KeyPressEventArgs e)
  13.     {
  14.         FarPoint.Win.Spread.CellType.GeneralEditor ge = sender as FarPoint.Win.Spread.CellType.GeneralEditor;
  15.         int count = System.Text.Encoding.Default.GetByteCount(ge.Text);
  16.         if (true)
  17.         {
  18.             e.Handled = true;
  19.         }
  20.     }
复制代码
回复 使用道具 举报
deppp
论坛元老   /  发表于:2013-1-29 18:10:00
板凳
搞定 谢谢
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2013-1-29 19:00:00
地板
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部