era*_*zap 1 wpf xaml controltemplate
我有一个"立方体"(Dice)控件,它来自Button
立方体:
public class Cube : Button
{
public Cube()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(Cube), new FrameworkPropertyMetadata(typeof(Cube)));
}
...... // Stuff
}
Run Code Online (Sandbox Code Playgroud)
模板(一般):
<ControlTemplate TargetType="{x:Type local:Cube}" x:Key="CubeControlTemplate">
<Border>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="40"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Border>
<Grid>
.......
</Grid>
</Border>
<Border Grid.Column="2">
<Grid>
.......
</Grid>
</Border>
<Grid>
</Border>
</ControlTemplate>
Run Code Online (Sandbox Code Playgroud)
它看起来像什么:
黄色标记显示它只能在内容后面点击,只有当你真正针对按钮被"隐藏"的点击时才会点击.
任何想法为什么会这样?
没有Background鼠标事件将不会被捕获.给你的外在Border透明Color:
<ControlTemplate TargetType="{x:Type local:Cube}" x:Key="CubeControlTemplate">
<Border Background="Transparent">
.......
</Border>
</ControlTemplate>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
716 次 |
| 最近记录: |