2017-09-08 1 views
0

TextBoxから継承するカスタム "NumericTextBox"クラスを持つC#/ WinFormsアプリケーションがあります。しかし、VSDesignerにはNumericTextBox(マルチライン、パスワードの文字など)に意味のない多くのプロパティがあります。継承したwinformコントロールクラスからプロパティを非表示(削除)することができます

誤って設定することができないようにデザイナーから「消える」方法はありますか?

StackOverflowの他の「解決策」では、上書きできないプロパティは処理されません。

あなたは彼らに [Browsable(false)] atttributeを与え、その後非表示にしたいのですが、基本クラスのプロパティをオーバーライドすることができ
+0

私はあなたがそれらにアクセスできなくすることができます信じていません。/non-invocableあなたができることは、あなたのサブクラスでプロパティの新しい実装を提供するために 'new'キーワードを使用し、潜在的に' Exception'を使用することです。また、プロパティ/メソッド – Vikhram

+0

の下の 'Attributes'' [Browsable(false)、EditorBrowsableState.Never]]を使って、プロパティページとVS intellisenseで非表示にすることができます。私... – DonBoitnott

+0

答えを見つけた、ソリューションは[カスタムControlDesignerです。](https://stackoverflow.com/questions/38582461/remove-generatemember-and-modifiers-properties-in-designer) – EddieRich

答えて

1

例:

[Browsable(false)] 
public new bool UseMnemonic 
{ 
    get 
    { 
     return false; 
    } 
    set 
    { 
     // do nothing 
    } 
} 
関連する問題