禁用时WPF文本框样式

时间:2015-05-27 16:51:10

标签: wpf

我正在尝试创建一个简单的TextBox样式。我想在禁用文本框时创建一个更改颜色的触发器:

Sub DIC2toCAN()
    Dim LR As Long, i As Long, k As Long

    With Sheets("DIC2")
        LR = .Range("B" & Rows.Count).End(xlUp).Row

        k = 1
        For i = 1 To LR
            With .Range("B" & i)
                If .Value = "1731" Then
                    If .Range("C" & i) is between 6 & 16 or is between 28 & 39 Then
                        Sheets("CANmonitor").Range("C" & k) = 0
                    Else
                        Sheets("DIC2").Range("E" & i).Copy _
                        Destination:=Sheets("CANmonitor").Range("C" & k)
                        k = k + 1
                    End If
                End If
            End With
        Next i
    End With
End Sub

当我使用触发器时,文本框会消失

这里有什么问题?

由于

1 个答案:

答案 0 :(得分:4)

ControlTemplate 替换该控件类型的模板。看起来你误解了它的用法。在触发器之前,尝试添加一些可视对象来显示,例如边框,并且会出现。更好的是,根本不要使用ControlTemplate ...你只需要在样式上设置属性触发器,例如:

<Style.Triggers>
    <Trigger Property="IsEnabled" Value="false">
        <Setter Property = "Foreground" Value="Green"/>
    </Trigger>
</Style.Triggers>