私は、CompositeDataBoundControlを継承するASPページのカスタムWebコントロールを作成しています。 が必要なのコントロールの定義にpublicプロパティがあります。ユーザーがASPページのコントロール定義にこのプロパティを指定しないと、そのプロパティが破損し、例外が発生します。私は、ユーザーがコントロールの 'runat'プロパティを提供するのを忘れたときに、コンパイラが警告に似た警告を出すようにしたい。カスタムASP .NETコントロールの必須プロパティ
"検証(ASP.Net):要素 'asp:Button'に必須の属性 'runat'がありません。"
public class MyControl : CompositeDataBoundControl, IPostBackEventHandler
{
private string _someString;
public string SomeString
{
get { return _someString; }
set { _someString = value; }
}
// Other Control Properties, Functions, Events, etc.
}
私は必要な特性であると私は私のページを構築する際に、コンパイラの警告をスローするように、「SomeString」をしたい:ここ
は私のコードがどのように見えるか、基本的です。
私はそうのような性質上必要な属性を入れて試してみました:
[Required]
public string SomeString
{
get { return _someString; }
set { _someString = value; }
}
しかしこのdoesntのは動作するようです。
どうすればこのようなコンパイラメッセージを生成できますか?
可能重複[Iは、カスタム.NET Webコントロールで必要な属性を指定するにはどうすればよいです?](http://stackoverflow.com/questions/1106134/how-do-i-specify- a-required-custom-at-a-custom-net-web-control) –
あなたはrunnatが特別なケースであると思うと思います。これは、aspnetランタイムへの信号であり、マークアップはコントロールとしてレンダリングされ、コントロールはページクラス(またはコンテナ)にフィールドとして追加する必要があるというIDEへの信号です。 このプロパティに注意してください: 'btnmybutton.runnat'はあなたのコードの中に存在しません。 –
私は何を求めているのですか? – user1018669