SharePoint 웹 컨트롤 LookupField 컨트롤을 사용하여 드롭 다운 목록을 표시하는 VS2010 (LayoutsPageBase에서 상속)에서 간단한 aspx 페이지로 사용자 지정 편집 양식을 만들었습니다. 값SharePoint 2010 웹 컨트롤 - 포스트 백에 LookupField 값이 설정되지 않음
ControlMode이 (내가 시도하지만 명시 적으로 편집 설정)을 FormContext와 동일로 설정의 예상 범위를 포함하는 드롭 다운 상자와
양식 제대로 표시 사용자 정의 형식의 값
그러나 포스트 백에서 드롭 다운 목록의 값이 설정되지 않았습니다. - 선택한 항목 인덱스가 -1로 설정되었습니다.
LookupField 컨트롤을 사용하여 사용자가 선택한 값을 올바르게 캡처하는 방법은 무엇입니까?
aspx에서 컨트롤 declaritivly를 추가 한 다음 페이지로드 이벤트의 SPContext에서 목록 ID 등을 설정했기 때문일 수 있습니까? - 아래 코드를 참조 (안 예쁜하지만 그냥이 시점에서 작업을 얻으려고 노력) 다음에
<SharePoint:FileField ID="FileNameText" InputFieldLabel="Name" runat="server" ControlMode="Display"/><br />
<SharePoint:LookupField ID="FeedType" runat="server" />
<SharePoint:TextField ID="FeedStatus" runat="server" />
....
: 영문에서
페이지로드 뒤에 코드 :
if (!IsPostBack)
{
SPItem feedFileItem = SPContext.Current.Item;
FileNameText.ControlMode = SPContext.Current.FormContext.FormMode;
FileNameText.ListId = SPContext.Current.ListId;
FileNameText.ItemId = SPContext.Current.ItemId;
FileNameText.FieldName = "Name";
FeedType.ControlMode = SPControlMode.Edit;
FeedType.ListId = SPContext.Current.ListId;
FeedType.ItemId = SPContext.Current.ItemId;
FeedType.FieldName = "FeedType";
FeedStatus.ItemContext = SPContext.Current;
FeedStatus.RenderContext = SPContext.Current;
FeedStatus.ControlMode = SPControlMode.Edit;
FeedStatus.ListId = SPContext.Current.ListId;
FeedStatus.ItemId = SPContext.Current.ItemId;
FeedStatus.FieldName = "FeedStatus";
}
UPDATE
좋아요. CreateChildControls 재정의에서 컨트롤 뒤에 코드를 추가하여 양식을 가져올 수있었습니다. 이는 인터넷에서 본 대부분의 샘플과 일치합니다.
하지만 누군가가 내 접근 방식이 작동하지 않는 이유와 내가 이것을 aspx의 선언적 방식으로 모두 할 수 있는지 설명 할 수 있습니까?
포스트 백과 같은 소리는 목록을 다시 바인딩하는 코드를 게시 할 수 있습니까? – djeeg
예제 코드 추가 – Richard