请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

x_g
银牌会员   /  发表于:2015-10-19 15:41  /   查看:12569  /  回复:19
在MultiRow7.0中,如何高亮选中一个特定的Cell,例如我设置了
  multirow.CurrentCell = multirow.Rows(0).Cells(0),
虽然选中了该单元格,但是却不能讲单元格的内容高亮

19 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2015-10-19 18:05:00
沙发
回复 1楼x_g的帖子

CurrentCell.Style.SelectionBackColor和SelectionForeColor可以设置高亮的文字和背景色。
但是从这个帖子:DefaultCellStylehttp://gcdn.gcpowertools.com.cn/showtopic-19023.html
根据这个帖子里的描述,你是在特定的逻辑结构下才出现此问题的。
因此还请将能重现该问题的demo发给我们,我们帮你看看。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-10-20 10:13:00
板凳
回复 2楼Alice的帖子

抱歉,由于项目比较特殊,不太方便做Demo
有几个问题请教一下:
CurrentCell.Style.SelectionBackColor和SelectionForeColor
这个是设置高亮时候的文字和背景色,但是我只是需要让他高亮即可,并不需要设置它高亮的颜色和背景
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-10-20 11:10:00
地板
回复 3楼x_g的帖子

默认选择后,就是会高亮显示:背景色是蓝色,文字是白色。
不太理解你出的是什么问题,所以很抱歉不能重现你的问题,如果项目保密,你可以模拟一个简单的demo,不使用项目中涉及的数据,只要能够重现问题,然后发给我们,我们帮你看看。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-10-20 15:09:00
5#
回复 4楼Alice的帖子

好的,我简单模拟了一下问题,麻烦您了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-10-20 16:32:00
6#
回复 4楼Alice的帖子

这本Demo中,上下键按下的时候,不能够跳出当前的cell,进行上下移动,希望您能帮忙看看是为什么
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2015-10-20 17:22:00
7#
回复 5楼x_g的帖子

谢谢你的反馈。
demo我们已经收到了,测试后给您反馈。
很抱歉给您能带来的不便。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
x_g
银牌会员   /  发表于:2015-10-20 17:50:00
8#
回复 7楼Alice的帖子

谢谢了
回复 使用道具 举报
rbgongming
论坛元老   /  发表于:2015-10-21 10:41:00
9#
回复 8楼x_g的帖子

你好,由于你上传的Demo我的电脑环境不能运行,
所以不能模拟你的问题,但是我写了一段高亮选中
的代码,你试一试是否满足你的需求。代码如下:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        GcMultiRow1.EditMode = EditMode.EditOnEnter
        GcMultiRow1.BeginEdit(True)
        GcMultiRow1.CurrentCell = GcMultiRow1.Rows(0).Cells(0)
        Dim textBoxCell1 As New TextBoxCell()
        textBoxCell1.HighlightText = True
        textBoxCell1.Value = "TEST"
        Dim template1 As Template = Template.CreateGridTemplate(New GrapeCity.Win.MultiRow.Cell() {textBoxCell1})
        GcMultiRow1.Template = template1
        GcMultiRow1.RowCount = 3
    End Sub
如不能解决你的问题,欢迎你继续反馈,给您带来的
不便深感抱歉!!!
把简单的事做好就是不简单,
把平凡的事做好就是不平凡。
回复 使用道具 举报
rbgongming
论坛元老   /  发表于:2015-10-21 10:51:00
10#
回复 6楼x_g的帖子

如下代码,可以帮你解决上下键移动的问题:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        GcMultiRow1.Template = Template.CreateGridTemplate(3)
        GcMultiRow1.RowCount = 5
        GcMultiRow1.EditMode = EditMode.EditOnEnter

        GcMultiRow1.ShortcutKeyManager.Unregister(Keys.Down Or Keys.Control)
        GcMultiRow1.ShortcutKeyManager.Unregister(Keys.Up Or Keys.Control)
        GcMultiRow1.ShortcutKeyManager.Unregister(Keys.Left Or Keys.Control)
        GcMultiRow1.ShortcutKeyManager.Unregister(Keys.Right Or Keys.Control)

    End Sub

    Private Sub GcMultiRow1_EditingControlShowing(ByVal sender As Object, ByVal e As GrapeCity.Win.MultiRow.EditingControlShowingEventArgs) Handles GcMultiRow1.EditingControlShowing
        RemoveHandler e.Control.KeyDown, AddressOf editor_KeyDown
        AddHandler e.Control.KeyDown, AddressOf editor_KeyDown
    End Sub

    Private Sub editor_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
        If e.Control Then
            Select Case e.KeyCode
                Case Keys.Down
                    e.SuppressKeyPress = True
                    SelectionActions.MoveDown.Execute(DirectCast(sender, IEditingControl).GcMultiRow)
                Case Keys.Up
                    e.SuppressKeyPress = True
                    SelectionActions.MoveUp.Execute(DirectCast(sender, IEditingControl).GcMultiRow)
                Case Keys.Left
                    e.SuppressKeyPress = True
                    SelectionActions.MoveLeft.Execute(DirectCast(sender, IEditingControl).GcMultiRow)
                Case Keys.Right
                    e.SuppressKeyPress = True
                    SelectionActions.MoveRight.Execute(DirectCast(sender, IEditingControl).GcMultiRow)
            End Select
        End If
    End Sub
如不能解决你的问题,欢迎你继续反馈,给您带来的
不便深感抱歉!!!

评分

参与人数 1金币 +999 收起 理由
Alice + 999 非常感谢您的反馈,奖励金币

查看全部评分

把简单的事做好就是不简单,
把平凡的事做好就是不平凡。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部