WPF UserControl ต่อไปนี้เรียกว่าDataTypeWholeNumberซึ่งใช้งานได้
ตอนนี้ฉันต้องการสร้าง UserControl ชื่อDataTypeDateTimeและDataTypeEmailเป็นต้น
คุณสมบัติการพึ่งพาจำนวนมากจะถูกใช้ร่วมกันโดยการควบคุมเหล่านี้ทั้งหมดดังนั้นฉันจึงต้องการใส่วิธีการทั่วไปลงใน BaseDataTypeและให้ UserControl แต่ละตัวสืบทอดมาจากประเภทพื้นฐานนี้
แต่เมื่อฉันทำอย่างนั้นฉันจะได้รับข้อผิดพลาดชี้แจงบางส่วนอาจไม่ได้มีฐานเรียนที่แตกต่างกัน
ดังนั้นฉันจะใช้การสืบทอดกับ UserControl ได้อย่างไรเพื่อให้ฟังก์ชันการทำงานที่แชร์ทั้งหมดอยู่ในคลาสพื้นฐาน
using System.Windows;
using System.Windows.Controls;
namespace TestDependencyProperty827.DataTypes
{
public partial class DataTypeWholeNumber : BaseDataType
{
public DataTypeWholeNumber()
{
InitializeComponent();
DataContext = this;
//defaults
TheWidth = 200;
}
public string TheLabel
{
get
{
return (string)GetValue(TheLabelProperty);
}
set
{
SetValue(TheLabelProperty, value);
}
}
public static readonly DependencyProperty TheLabelProperty =
DependencyProperty.Register("TheLabel", typeof(string), typeof(BaseDataType),
new FrameworkPropertyMetadata());
public string TheContent
{
get
{
return (string)GetValue(TheContentProperty);
}
set
{
SetValue(TheContentProperty, value);
}
}
public static readonly DependencyProperty TheContentProperty =
DependencyProperty.Register("TheContent", typeof(string), typeof(BaseDataType),
new FrameworkPropertyMetadata());
public int TheWidth
{
get
{
return (int)GetValue(TheWidthProperty);
}
set
{
SetValue(TheWidthProperty, value);
}
}
public static readonly DependencyProperty TheWidthProperty =
DependencyProperty.Register("TheWidth", typeof(int), typeof(DataTypeWholeNumber),
new FrameworkPropertyMetadata());
}
}