我想建立一个新的自定义控件。我发现很少有教程为我提供了一些实现方法的线索。据我了解,创建新的自定义控件总是通过扩展当前控件来完成的,甚至有可能扩展例如,您甚至可以扩展层次结构中最基本的层次上的控件:
如以下教程中所写:http://wpftutorial.net/HowToCreateACustomControl.html
因此,我按照本教程创建了一个自定义控件库类型的新项目,得到了我的通用.xaml和代码。到目前为止一切顺利。
我可以区分三种事件类型或类别。
将使用我的控件的窗口(或容器)可消耗的事件:这些是我想暴露给外部的事件。怎么写?
与控件本身相关且未暴露在外部的事件;例如,如果鼠标在我的控制上,而我想做出反应对此。我可以在XAML中做到这一点:
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="Fill" TargetName="LeftTraingularIndicator">
<Setter.Value>
<SolidColorBrush Color="Yellow" />
</Setter.Value>
</Setter>
</Trigger>
</ControlTemplate.Triggers>
假设是因为我的元素具有fill属性名为x:name =“ LeftTraingularIndicator”]的ControlTemplate
问题:
现在,我想在我的XAML中对IsMouseDown做出反应。我怎么做?没有“ IsMouseDown”触发器。此外,如果我要怎么办在后面的代码中对此做出反应?更进一步,如果我想要更改后面的代码中的LeftTraingularIndicator“ Fill”?
我现在尝试了2天...感觉我在了解事物的运作方式时缺少了一些东西。找不到任何可以深入解释这些问题的教程。
我想看看我在这里浮出水面的每个问题的几行示例。
谢谢。
我想建立一个新的自定义控件。我发现很少有教程为我提供了一些实现方法的线索。据我了解,创建新的自定义控件总是通过扩展当前控件来完成的,...
经过广泛研究...
如果我正确理解了您的问题,以下是我的解释。