Вопрос

Я попробую редактировать xlstviewwebpart для редактирования customize. Но не получает никаких подсказок для моего сценария.

Я хочу изменить ссылку на заголовку в режиме редактирования вместо режима отображения на страницах WebPart.

Эта просмотр отображения на странице WebPart

Когда ссылка на ссылку заголовка его рендеринга в режиме отображения

Вот так:

Введите описание изображения здесь

Так что я хочу напрямую открыть в режиме редактирования. Любой, ктоги мне, плз?

Это было полезно?

Решение

Есть несколько способов достижения этого.

Я думаю, что наиболее предпочтительным способом является создание вычисленного поля.

1. Вычисленное поле

Точка на самом деле есть 5 "заголовка" в любом списке SharePoint:

Введите описание изображения здесь

Первый хранит данные, остальные 4 являются вычисляются и просто генерируют некоторые HTML, используя данные из первого столбца.

Вы можете использовать аналогичный подход и добавить свое собственное вычисленное поле в список, а затем добавить его в представление списка.

Чтобы добавить вычисленное поле, вы можете использовать Addfieldasxml Метод.

Пример использования addfieldasxml для Computed Создание поля:

    .
  • http://aroundsharepoint.blogspot.com / 2009/02/dynamiLy-creat-spview-with-checkbox.html

    P.S. Самый безопасный способ адресации формы редактирования - использовать страницу listform.aspx следующим образом:

    /_layouts/listform.aspx?PageType=6&ListId={PUT-LIST-GUID-HERE}&ID=5
    
    .

    (значение pageType идет от Перечисление PageType )

    2. Преобразование XSL

    Другой вариант - использовать возможности XSLT XSLTlistViewwart . В этом случае вам необходимо написать файл XSL и прикрепите его к представлению списка, например, путем заполнения spview.xsllink Недвижимость.

    Пример:

    <xsl:stylesheet xmlns:x="http://www.w3.org/2001/XMLSchema" xmlns:d="http://schemas.microsoft.com/sharepoint/dsp" version="1.0" exclude-result-prefixes="xsl msxsl ddwrt" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:asp="http://schemas.microsoft.com/ASPNET/20" xmlns:__designer="http://schemas.microsoft.com/WebParts/v2/DataView/designer" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:SharePoint="Microsoft.SharePoint.WebControls" xmlns:ddwrt2="urn:frontpage:internal" xmlns:o="urn:schemas-microsoft-com:office:office"> 
    
      <xsl:include href="/_layouts/xsl/main.xsl"/> 
      <xsl:include href="/_layouts/xsl/internal.xsl"/> 
    
      <xsl:param name="AllRows" select="/dsQueryResponse/Rows/Row[$EntityName = '' or (position() &gt;= $FirstRow and position() &lt;= $LastRow)]"/>
      <xsl:param name="dvt_apos">'</xsl:param>
    
      <xsl:template match="FieldRef[@Name='LinkTitle']" mode="Computed_LinkTitle_body">
          <xsl:param name="thisNode" select="." />
          <a>
              <xsl:attribute name="href">/_layouts/listform.aspx?PageType=6&amp;ListId=<xsl:value-of select="$List" />&amp;ID=<xsl:value-of select="$thisNode/@ID" /></xsl:attribute>
              <xsl:attribute name="onclick">
                  SP.UI.ModalDialog.showModalDialog({
                    url: '/_layouts/listform.aspx?PageType=6&amp;ListId=<xsl:value-of select="$List" />&amp;ID=<xsl:value-of select="$thisNode/@ID" />'
                  }); return false;
              </xsl:attribute>
              <xsl:value-of select="$thisNode/@Title"/>
          </a>
      </xsl:template>
    </xsl:stylesheet>
    
    .

    P.S. Этот код был проверен и работает.

Другие советы

Другой возможный вариант: если вы открываете представление в Designer и добавьте свои элементы XSL там

Кто-нибудь знает что-нибудь о различиях по производительности на трех способах в крупных списках?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top