サイトが作成されたときにアクティブになる EventReciever を作成しました。このサイトにはお知らせ Web パーツがあります。「アナウンスの追加」をクリックすると、newform.aspx がダイアログとしてポップアップし、そこに Expired というフィールドがあり、必須にする必要があるため、フィールドを使用する必要があります。そうしないと、ユーザーがアナウンスを追加できなくなります。
その特定のフィールドを見つけて、EventReciever で Required に設定するにはどうすればよいですか?
<!-- FieldName="Expires"
FieldInternalName="Expires"
FieldType="SPFieldDateTime"
-->
これは私がこれまでに進歩した方法です:
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
if (properties.Feature.Parent is SPWeb)
{
var web = properties.Feature.Parent as SPWeb;
var expiredDate = web.Fields.GetFieldByInternalName("Expires");
expiredDate.Required = true;
expiredDate.Update();
}
}
どんな種類のヒントやヘルプも大歓迎です!