【问题标题】:Mouse Event Didn't Work In RadToolbar鼠标事件在 RadToolbar 中不起作用
【发布时间】:2015-08-06 06:53:55
【问题描述】:

我有一个 radtoolbar,里面有两个按钮,其中一个按钮有 Mouse Enter 事件,它改变了按钮的背景。但没有用,按钮不会改变

有什么问题?

工具栏组件:

<telerik:RadToolBar x:Name="radToolbar" FocusManager.IsFocusScope="False" Height="30" Margin="0" VerticalAlignment="Top">
        <Button Content="Button" Margin="0,0,0,-2" Width="75"/>
        <telerik:RadButton x:Name="mybutton" Content="Button" Height="Auto" Margin="0,0,0,-2" Width="60" MouseEnter="mybutton_MouseEnter">

        </telerik:RadButton>
    </telerik:RadToolBar>

鼠标事件:

private void mybutton_MouseEnter(object sender, MouseEventArgs e)
    {
        this.mybutton.Background = new SolidColorBrush(Color.FromArgb(100, 20, 50, 200));
    }

【问题讨论】:

    标签: c# wpf telerik mouseevent


    【解决方案1】:

    RadToolBar 具有许多可包含在工具栏中的常用控件的预定义样式,覆盖在 XAML 中或通过代码对样式所做的任何显式更改。

    说明此行为的一种戏剧性方法是使用对代码的此更改删除所有预定义样式:

    <telerik:RadToolBar x:Name="radToolbar" FocusManager.IsFocusScope="False" Height="30" Margin="0" VerticalAlignment="Top">
        <telerik:RadToolBar.Resources>
            <Style TargetType="telerik:RadToolBar">
                <Setter Property="ItemContainerStyleSelector" Value="{x:Null}"/>
            </Style>
        </telerik:RadToolBar.Resources>
        <Button Content="Button" Margin="0,0,0,-2" Width="75"/>
        <telerik:RadButton x:Name="mybutton" Content="Button" Height="Auto" Margin="0,0,0,-2" Width="60" MouseEnter="mybutton_MouseEnter" >
         </telerik:RadButton>
    </telerik:RadToolBar>
    

    您的代码现在应该可以处理可能的副作用,即样式的其他部分需要您自己重新添加(这是一项艰巨的工作!)。

    RadBarTool 中讨论了将样式应用于控件的各种技术Telerik forum thread,并在此处提供了指向Telerik SDK demo 的链接。

    【讨论】:

      猜你喜欢
      • 2014-12-14
      • 2011-02-02
      • 2015-06-23
      • 2014-03-24
      • 1970-01-01
      • 1970-01-01
      • 2014-10-23
      • 1970-01-01
      • 2018-07-26
      相关资源
      最近更新 更多