那麼標題應該很好地解釋問題。考慮我創建一個新的UserControl
,但是在我的應用程序中,許多這些元素共享一個通用代碼,並且它們是用戶控件「子組」的一部分。使用Visual Studio設計器時繼承UserControl基類的錯誤
合乎邏輯的是在生成的CustomUserControl
和UserControl
之間「插入」一個類;
一種近乎:
public abstract class CommonCustomControl : UserControl
{
public CommonCustomControl(int v, string other) {
}
}
public partial class CustomUserControl : CommonCustomControl
{
CustomUserControl(int v, string other) : base(v, other) {
}
}
現在有了這個問題,是該類只是「局部」由Visual Studio生成。因此更改生成的CustomUserControl
類會給出錯誤:
「基類與其他部分中聲明的不同」
如何防止此錯誤?雖然仍然能夠在Visual Studio的GUI設計器中真正設計我的用戶控制元素?
我已經試過了this question提供的答案。但它似乎根本不起作用。 (也許自那時候談到winforms而不是WPF版本)
[TypeDescriptionProvider(typeof(AbstractControlDescriptionProvider<InterfaceHandler, UserControl>))]
public abstract class CommonCustomControl : UserControl
{
private readonly int _v;
private readonly string _other;
public CommonCustomControl(int v, string other) {
_v = v;
_other = other;
}
}
public partial class CustomUserControl : CommonCustomControl
{
public CustomUserControl(int v, string other) : base(v, other) {
}
}
出了什麼問題?
啊我也可以做這樣的事情。 – paul23
很容易錯過... –