Переопределить тип веб-части Chrome

Я сделал веб-часть в Sharepoint 2010, и мне нужно, чтобы свойство "Тип Chrome" всегда устанавливало значение "Нет".

Я искал способы заставить Combobox "None" или переопределить "Тип Chrome" в классе С#, но я не нашел способа сделать это. Каков наилучший способ установить это свойство?

Override Chrometype

Ответы

Ответ 1

Вы должны иметь возможность изменять .ChromeType свойство веб-части в коде.

Имейте в виду, что вы делаете это в жизненном цикле веб-части.

Если вы сделаете это как часть метода Render, будет слишком поздно - к тому моменту хром уже нарисован.

На другом конце шкалы, если вы сделаете это раньше, ваш параметр будет переопределен, когда SharePoint применит настройки из инструментальной части.

Посмотрите, как это делается в событии OnPreRender.

Ответ 2

Другой вариант - использовать файл .webpart, чтобы указать это по умолчанию, используя свойство ChromeType. Вы можете сделать это в своем решении Visual Studio (как показано ниже), или вы можете редактировать файл .webpart непосредственно в галерее веб-частей.

Поскольку это не кодовый подход, он кажется немного проще, чем маршрут С#.

Попробуйте следующее:

<?xml version="1.0" encoding="utf-8"?>
<webParts>
  <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
    <metaData>
      <type name="<<ClassName>>, $SharePoint.Project.AssemblyFullName$" />
  <importErrorMessage>$Resources:core,ImportErrorMessage;</importErrorMessage>
</metaData>
<data>
  <properties>
    <property name="Title" type="string">Custom List Form</property>
    <property name="Description" type="string">Provides A Data Entry Form For a SharePoint List</property>
    <!-- SEE CHROME TYPE BELOW -->    
    <property name="ChromeType" type="chrometype">None</property>
  </properties>
</data>
</webPart>
</webParts>

Ответ 3

Это еще одно решение для изменения ChromeType с использованием PartChromeType = "None"

<WebPartPages:WebPartZone runat="server" Title="Banner" ID="Banner" PartChromeType="None" />

Поддерживаемые параметры:

  • BorderOnly
  • По умолчанию
  • None
  • TitleAndBorder
  • TitleOnly

Чтобы обновить изменения, иногда необходимо удалить и повторно вставить веб-страницу