找回密码
 立即注册

QQ登录

只需一步,快速开始

gzaod

注册会员

12

主题

28

帖子

134

积分

注册会员

积分
134

活字格认证微信认证勋章元老葡萄

gzaod
注册会员   /  发表于:2018-3-15 15:30  /   查看:3196  /  回复:5
TxTextControl WinForm .Net X15.1 当 TextField 在编辑状态时,背景色和字体颜色如何修改?例如将 “请输入姓名”改为 黄色背景,字体颜色改为蓝色。
blob178524779.png
blob397806395.png

5 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-3-15 16:24:21
沙发
您说的应该是下图这种效果吧,但是我不明白什么是在编辑状态,正常的选中这个textfield的后可以设置字体的颜色和背景颜色的。(在界面工具栏中),也可以通过代码来设置
  1.             _textControl.TextFields.Add(new TextField("dfdfdfdf"));
  2.             TextField tf = _textControl.TextFields.GetItem(0);
  3.             _textControl.Selection.Start = tf.Start;
  4.             _textControl.Selection.Length = tf.Length;
  5.             _textControl.Selection.ForeColor = Color.Blue;
复制代码


image.png66044005.png
回复 使用道具 举报
gzaod
注册会员   /  发表于:2018-3-16 09:26:05
板凳
Richard.Ma 发表于 2018-3-15 16:24
您说的应该是下图这种效果吧,但是我不明白什么是在编辑状态,正常的选中这个textfield的后可以设置字体的 ...

感谢您的恢复。
再次描述如下:编辑状态:MergeField 在用户“输入/修改”的状态下。
应该有个全局属性的,找不到在哪里。
blob526390380.png blob329556578.png
blob126861571.png
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-3-16 16:14:37
地板
了解了,但是目前这种编辑状态只能选择有背景(灰色)或者没有背景,无法改变字体和背景颜色

  1.                         try {
  2.                                 foreach (TXTextControl.IFormattedText part in _textControl.TextParts) {
  3.                                         foreach (TXTextControl.ApplicationField fld in part.ApplicationFields) {
  4.                                                 if ((fld.TypeName == "IF") && (fld.Length == 0)) {
  5.                                                         // Show invisible IF fields
  6.                                                         fld.Text = "{IF}";
  7.                                                 }
  8.                                                
  9.                         fld.ShowActivated = _bHighlightFields;
  10.                                         }
  11.                                 }
  12.                         }
  13.                         catch { }
复制代码

评分

参与人数 1满意度 +3 收起 理由
gzaod + 3 淡定

查看全部评分

回复 使用道具 举报
gzaod
注册会员   /  发表于:2018-3-21 11:36:18
5#
在Designer中,我可以完成这件事情,就是使用 Text HighLight Color 设置高亮颜色。但是不知道如何用代码来控制。 image.png872171325.png
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-3-21 16:48:18
6#
按照您这张图中的图标,实际上就是给选中的文字添加背景颜色的,并不是用Text HighLight Color来设置颜色。
2楼的代码即是您在Designer中的对应功能。

4楼是用代码来设置Text HighLight Color,但是设置的效果只能是灰色



回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部