簡體   English   中英

在WebPart編輯器區域中添加自定義屬性

[英]Add Custom Property in WebPart Editor Zone

  • 我有顯示內容的webparts。
  • 使用Webpart Editor區域我需要選擇顯示樣式。
  • 通過選擇樣式我需要在網格或列表或滾動(從下拉列表)中顯示數據。
  • 如何在Webpart Editor區域中添加自定義屬性。

我是新手。

我有谷歌這個但沒有得到任何東西。

任何幫助都是贊賞的。

正如Mathew Collins所寫

我沒有在這里得到任何回復,但我能夠想辦法做一些這些。

  1. 最后我決定覆蓋EditorPart類。

  2. ApplyChanges()和SyncChanges()方法基本上只是將更改從頁面持久保存到個性化blob,反之亦然。 這是在頁面上呈現一些控件,並在這些方法中將值映射到Web部件的屬性。

喜歡

Imports Microsoft.VisualBasic
Imports System
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Data
Imports FormsUtilities

Namespace CustomEditorZone

    Public Class CustomEditor : Inherits EditorPart

        Public Sub New()
            Me.Title = "Change Display Style"
        End Sub 'New

        Private PartPropertyValue As DropDownList

        Protected Overrides Sub CreateChildControls()
            Controls.Clear()
            PartPropertyValue = New DropDownList()
            PartPropertyValue.AppendDataBoundItems = True
            PartPropertyValue.Items.Add("")
            PopulateControl(PartPropertyValue)
            Me.Controls.Add(PartPropertyValue)
        End Sub 'CreateChildControls

        Public Overrides Function ApplyChanges() As Boolean

            EnsureChildControls()
            Dim MyWebPart As GenericWebPart = DirectCast(WebPartToEdit, GenericWebPart)
            Dim MyControl As CustomWebPart.WebPartBaseConsumer = DirectCast(MyWebPart.ChildControl, CustomWebPart.WebPartBaseConsumer)
            MyControl.DisplayStyle = PartPropertyValue.SelectedItem.Text
            Return True

        End Function 'ApplyChanges

        Public Overrides Sub SyncChanges()
            Try
                EnsureChildControls()
                Dim MyWebPart As GenericWebPart = DirectCast(WebPartToEdit, GenericWebPart)
                Dim MyControl As CustomWebPart.WebPartBaseConsumer = DirectCast(MyWebPart.ChildControl, CustomWebPart.WebPartBaseConsumer)
                Dim CurrentDisplay As String = MyControl.DisplayStyle

                For Each Item As ListItem In PartPropertyValue.Items
                    If Item.Text = CurrentDisplay Then
                        Item.Selected = True
                        Exit For
                    End If
                Next
            Catch ex As Exception

            End Try

        End Sub 'SyncChanges

        Protected Overrides Sub RenderContents(ByVal writer As HtmlTextWriter)
            Try
                writer.Write("Display Style :")
                writer.Write(" ")
                Me.PartPropertyValue.RenderControl(writer)
            Catch ex As Exception

            End Try

        End Sub 'RenderContents

        Private Sub PopulateControl(ByRef PartPropertyValue As DropDownList)

            PartPropertyValue.Items.Add("Grid")
            PartPropertyValue.Items.Add("List")
            PartPropertyValue.Items.Add("Rolling")
        End Sub

    End Class 'CustomEditor
End Namespace

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM