找回密码
 立即注册

QQ登录

只需一步,快速开始

speed00

中级会员

42

主题

97

帖子

500

积分

中级会员

积分
500
speed00
中级会员   /  发表于:2020-5-22 15:23  /   查看:3215  /  回复:6
你好,富文本格式的表格在执行完下方的方法后后editor的RTF字符串会变,格式全丢失。有没有方法可以解决RichTextBox editor = null;

  private void fpSpread1_EditModeOn(object sender, EventArgs e)
        {
            editor = this.fpSpread1.EditingControl as RichTextBox;
//此时还是有格式的
        }



//出来后RTF就不一样了

6 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-5-22 22:09:05
沙发
问题已收到,你说的出来后RTF就不一样了,是指退出编辑状态后吗?是格式错乱还是消失了
回复 使用道具 举报
speed00
中级会员   /  发表于:2020-5-25 09:06:54
板凳
我是在退出编辑后出现的。

  private void fpSpread1_EditModeOn(object sender, EventArgs e)
        {
            editor = this.fpSpread1.EditingControl as RichTextBox;
richTextBox1.Rtf= editor.Rtf;//这个时候richTextBox1显示的是带格式的
        }
//然后我在去点了外面的一个按钮
private void button1_Click(object sender, EventArgs e)
        {
richTextBox1.Rtf= editor.Rtf;//这个时候richTextBox1的字体颜色,格式都没了
}
我的诉求是希望可以点击一个按钮将editor.SelectedText替换成别的文字,但要保留之前的格式
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-5-25 11:48:01
地板
我这里测试在点击按钮单元格失去焦点后,richtextbox中显示的仍然是有样式的,
我看了你的代码,有专门用editor = this.fpSpread1.EditingControl as RichTextBox;
这个是提前自定义过Editor吗


  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             richTextBox1.Rtf = fpSpread2.ActiveSheet.ActiveCell.Value.ToString(); ;
  4.         }
复制代码
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-5-25 17:03:03
5#
按钮直接调用下面的代码测试是没有问题的,可以拿到正确的文字和样式,

  1.         private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             richTextBox1.Rtf = fpSpread2.ActiveSheet.ActiveCell.Value.ToString(); ;
  4.         }
复制代码


我你是直接从this.fpSpread1.EditingControl 来取值,是出于什么考虑呢
回复 使用道具 举报
speed00
中级会员   /  发表于:2020-5-28 09:00:36
6#
已解决,谢谢
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-5-28 09:18:43
7#
好的,不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部