ユーザーコントロールで[System.ComponentModel.ReadOnly]を使用してプロパティを設定できないようにしましたが、 [DesignerSerializationVisibility .Hidden)]を使用する必要があります。どちらが正しい?それが[System.ComponentModel.ReadOnly]でない場合、この属性はいつ使用されるべきですか?Windowsフォームデザイナーがプロパティを設定しないようにする属性は何ですか?
2
A
答えて
4
これはそうですが、意図はありません。 [ReadOnly(true)]は、ユーザーがプロパティウィンドウでプロパティを変更できないようにします。まだ表示されていますが、グレイアウトされています。これが実際に有用であるというオッズはかなり小さいです、私は良い例を考えることができません。可能なコーナーケースは、他のプロパティ値に応じて、読み取り専用状態を動的に変更するカスタムTypeDescriptorです。しかし、それはロケット科学です。
通常、[Browsable(false)]を使用してプロパティが表示されないようにします。また、DesignerSerializationVisibility.Hiddenを使用すると、コードシリアライザがInitializeComponent()メソッドの値を保持しないようにすることができます。ユーザーが変更できない場合は有用であるとは限りません。たとえ[DefaultValue]が通常それを既に保証していたとしても。 YMMV。
関連する問題
- 1. shiroプリンシパルのプロパティをthymeleafタグ属性として設定するにはどうすればいいですか?
- 2. プロパティの属性「retain」が機能していないようですか?
- 3. iframeのallowfullscreen属性を設定しても属性が保持されないようです
- 4. ブラウザが「ID」の名前を変更しないように設定するプロパティは何ですか?
- 5. macOSに `#![windows_subsystem(windows)]`のような属性がありますか?
- 6. Windows:プロセスレベルの細かさでセキュリティ属性を設定する
- 7. どのようにキー属性を設定できますか?
- 8. 属性を延期しないようにDjango RawQuerySetを設定します
- 9. 公開する属性と公開しない属性は何ですか?
- 10. フォームに異なるオブジェクトの属性を設定するにはどうすればよいですか?
- 11. 属性を使用してboolプロパティを設定する
- 12. プロパティ属性を動的に設定します。
- 13. src属性のないiframe内のdivを設定するにはどうすればよいですか?
- 14. クラス "属性"と "プロパティ"の違いは何ですか?
- 15. "実行"属性をファイルに設定し、WindowsのSVNでチェックする方法は?
- 16. ASP.NET MVC(3)では、ビュージェネレータにプロパティが表示されないようにする属性がありますか?
- 17. Object.definePropertyではなくJavascriptプロパティの属性を直接設定する
- 18. Objective-CではARCを使用していますが、通常は非属性をプロパティ属性として指定するだけでよいのですか?
- 19. カスタム属性に属するプロパティを取得するにはどうすればよいですか?
- 20. XSDを定義する際に属性よりも属性グループを使用する利点は何ですか?
- 21. プロパティの属性設定の目的
- 22. 作成したJqueryダイアログボックス内で属性を設定するにはどうすればよいですか?
- 23. Laravel5.0のコントローラメソッドに隠し属性を設定するにはどうすればよいですか?
- 24. Mooseでは、属性が設定されるたびに属性を変更するにはどうすればよいですか?
- 25. タイトル属性がツールチップを表示しないようにするにはどうすればよいですか?
- 26. 関係を介してエンティティ属性を設定するにはどうすればよいですか?
- 27. __setitem__を実装してクラスの属性を設定するにはどうすればよいですか?
- 28. プロパティデコレータを使用して属性を設定するにはどうすればよいですか?
- 29. 異なる属性パスをユーザーに設定しますか?
- 30. HTMLファイル要素に設定できるcss属性は何ですか?
ありがとう私はプロパティを設定することができますが、コントロールのフォームのコンストラクタ/私はマーキングしているプロパティを持つコントロールをホストするフォームをマークします。 ReadOnlyを使用したとき、デザイナでMethodNotFound例外が発生するように見えました - これは期待されていますか? – Shane
うーん、いいえ。生成するのは簡単な例外です。フォームから削除することなくコントロールを変更するだけで、最初に行うことができます。私はこれから推測する必要はありません。質問するボタンをクリックしてください。 –