문제

jQuery와 kendo ui를 사용하여 크게 맞춤화 된 DFWP를 작성한 사용자 정의 응용 프로그램 페이지가 있지만 4 가지 목록에서 재사용하고 싶습니다.상기 웹 파트와 관련된 ListID를 동적으로 변경할 수있는 방법은 무엇입니까?

도움이 되었습니까?

해결책

DFWP 마크 업을 다음과 같이 변경했습니다 (<%# listId %>QueryString(ID) 찾으십시오)

<WebPartPages:WebPartZone runat="server" FrameType="None" ID="WebPartZone1" Title="loc:Main"><ZoneTemplate>
        <WebPartPages:DataFormWebPart runat="server" Description="" ID="DFWP1"
            PartOrder="2" Default="FALSE" HelpLink="" AllowRemove="True" 
            IsVisible="True" AllowHide="False" UseSQLDataSourcePaging="True" ExportControlledProperties="True"
            DataSourceID="" Title="MarketNeed" ViewFlag="8" NoDefaultStyle="TRUE" AllowConnect="True" DisplayName="MarketNeed" PageType="PAGE_NEWFORM" 
            FrameState="Normal" PageSize="-1" PartImageLarge="" AsyncRefresh="False" ExportMode="All" Dir="Default" DetailLink="" ShowWithSampleData="False" 
            ListId="<%# listId %>" 
            ListName="<%# listId %>" FrameType="None" PartImageSmall="" IsIncluded="True" 
            SuppressWebPartChrome="False" AllowEdit="True" ManualRefresh="False" ChromeType="None" AutoRefresh="False" AutoRefreshInterval="60" AllowMinimize="True"
             ViewContentTypeId="" InitialAsyncDataFetch="False" MissingAssembly="Cannot import this Web Part." HelpMode="Modeless" 
             ClientIDMode="g_8966a323_abbf_4513_83bb_1ce57b451422" ConnectionID="00000000-0000-0000-0000-000000000000" AllowZoneChange="True" 
            IsIncludedFilter="" __MarkupType="vsattributemarkup" __WebPartId="{8966A323-ABBF-4513-83BB-1CE57B451422}" __AllowXSLTEditing="true" WebPart="true" Height="" Width=""><ParameterBindings>
         <ParameterBinding Name="ListItemId" Location="QueryString(ID)" DefaultValue="0"/>
         <ParameterBinding Name="weburl" Location="None" DefaultValue="http://ctct-dev/sites/plm"/>
         <ParameterBinding Name="ListName" Location="None" DefaultValue="QueryString(ListId)" />
         <ParameterBinding Name="dvt_apos" Location="Postback;Connection"/>
         <ParameterBinding Name="ManualRefresh" Location="WPProperty[ManualRefresh]"/>
         <ParameterBinding Name="UserID" Location="CAMLVariable" DefaultValue="CurrentUserName"/>
         <ParameterBinding Name="Today" Location="CAMLVariable" DefaultValue="CurrentDate"/>
     </ParameterBindings>
.

이들은 뒤에있는 코드에서 Follwing을 사용하여 설정되었습니다.

protected Guid listId;
protected string listName;

protected void Page_Load(object sender, EventArgs e)
{
    SPList list = SPContext.Current.Site.RootWeb.Lists[new Guid(Request.QueryString["List"])];
    listName = list.Title;
    listId = list.ID;
    DataBind();
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top