質問

カスタムツールパートの一部であるいくつかのプロパティを持つWebPartを持っています。Propert / OKをクリックした後に編集中に編集中にWebPartの変更を反映しているプロパティを設定します。任意のアイデア?

tia

役に立ちましたか?

解決

これは純粋にWebパーツのライフサイクルのどこでプロパティを使用するかによって異なります。

「ツールペイン」が適用/ OKのクリックされたイベントを取得する前に値を使用すると、ToolParts ApplyChangesがFireを発射してプロパティを変更すると、次に次のPageLoadまで表示されません。

(クリックされたイベントの後に)値を遅くする場合は、変更に「即着」が表示されます。

クリックしたイベントの前にLiteralControlを追加するために、PageLoadでEnsureChildControlsを呼び出すため、TestCCCへの変更は次のPageLoadまで表示されません。TestRCへの変更は遅く表示されます。

public class TestEditWP : WebPart
{
    [Personalizable(PersonalizationScope.Shared)]
    [WebBrowsable(true)]
    public string TestCCC { get; set; }

    [Personalizable(PersonalizationScope.Shared)]
    [WebBrowsable(true)]
    public string TestRC { get; set; }

    protected override void OnLoad(EventArgs e)
    {
        base.OnLoad(e);
        EnsureChildControls();
    }
    protected override void CreateChildControls()
    {
        Controls.Add(new LiteralControl(TestCCC));
    }

    protected override void RenderContents(HtmlTextWriter writer)
    {
        base.RenderContents(writer);
        writer.Write("{0}", TestRC);
    }
}
.

ライセンス: CC-BY-SA帰属
所属していません sharepoint.stackexchange
scroll top