溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

繼承于抽象類的控件不能使用設(shè)計(jì)器

發(fā)布時(shí)間:2020-06-26 01:59:11 來(lái)源:網(wǎng)絡(luò) 閱讀:320 作者:wfy4422 欄目:編程語(yǔ)言

本來(lái)想著用一個(gè)抽象的用戶控件類把公共功能提取出來(lái),這樣能方便使用繼承于它的控件,但發(fā)覺(jué)繼承控件是無(wú)法使用設(shè)計(jì)器的,可見(jiàn)VS設(shè)計(jì)器會(huì)對(duì)控件進(jìn)行構(gòu)造,而抽象類是無(wú)法實(shí)例化的。原來(lái)的基類設(shè)計(jì)以下:

 public partial class OneDataBaseUC : UserControl
    {
        public OneDataBaseUC()
        {
            InitializeComponent();
        }
        public abstract bool CanEdit { get; set; }
        public abstract void Init();
        public abstract void SaveValue(string outKeyID);
        public abstract void DeleteValue(string outKeyID);
        public abstract void ClearControlValue();
        public abstract string ModuleName { get; set; }
        public abstract void ShowValue(string outKeyID);
    }

繼承控件如下

 public partial class BasicUserRolesUC : OneDataBaseUC

    {

        public BasicUserRolesUC()

        {

            InitializeComponent();

        }

    }

結(jié)果設(shè)計(jì)器打開BasicUserRolesUC會(huì)報(bào)錯(cuò),可見(jiàn)OneDataBaseUC不能是抽象的,當(dāng)然如果不需要設(shè)計(jì)器設(shè)計(jì)是沒(méi)問(wèn)題的

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI