C# 自定义控件的基类
我知道关于这个问题有很多材料,但也有很多相互矛盾的答案,没有进一步的解释,这让我很困惑 我即将开始一个更大的MVVMWPF项目,它还将包含一些自定义控件(视频编辑器,如时间滑块、色轮等) 为了学习实现自定义控件,我想首先尝试创建一个简单的颜色选择器控制盘。显然,最具挑战性的部分是渲染颜色选择圆。根据我在MSDN上读到的内容,我将首先从C# 自定义控件的基类,c#,wpf,wpf-controls,C#,Wpf,Wpf Controls,我知道关于这个问题有很多材料,但也有很多相互矛盾的答案,没有进一步的解释,这让我很困惑 我即将开始一个更大的MVVMWPF项目,它还将包含一些自定义控件(视频编辑器,如时间滑块、色轮等) 为了学习实现自定义控件,我想首先尝试创建一个简单的颜色选择器控制盘。显然,最具挑战性的部分是渲染颜色选择圆。根据我在MSDN上读到的内容,我将首先从控件继承并一次渲染颜色选择圈的背景 但是,继承自Usercontrol而不是Control,但也会将背景作为位图渲染一次 在本例中,当您打算创建控件时,从或中继承的
控件继承并一次渲染颜色选择圈的背景
但是,继承自Usercontrol
而不是Control
,但也会将背景作为位图渲染一次
在本例中,当您打算创建控件时,从或中继承的正确基类是哪个
当您创建我们所称的视图(您的屏幕)时,您使用或作为基类。在WPF items文件夹下(添加新项时)有一个用于向项目添加customcontrol的现有模板,该模板将创建您所需的基本内容,在Themes/Generic.xaml中有一个几乎为空的controltemplate,以及一个从控件派生的类,并带有所需的初始化
注意:如果您想扩展现有控件的功能,您也可以对它们进行子类化,但我更愿意在可能的情况下创建(美观、易于清洁、可重用)
希望有帮助
干杯
斯蒂安