2014-05-02 52 views

回答

1

我還沒有找到一種方法來爲每個模板的領域,但我設法在此文件中輸入添加的MaxLength:Sitecore的\殼\應用程序\對話框\ ExternalLink \ ExternalLink.xml

<Edit ID="Title" Width="100%" MaxLength="20" /> 

編輯:新的解決方案模板,每場最大長度

,使我挖一點,並發現了類似的方法來處理這種行爲。在同一個XML文件,你可以在codebeside類設置爲自己的一個:

<!--original value: <CodeBeside Type="Sitecore.Shell.Applications.Dialogs.ExternalLink.ExternalLinkForm,Sitecore.Client"/>--> 
    <CodeBeside Type="SitecoreMvc.Shell.Applications.Dialogs.ExternalLink.CustomExternalLinkForm,SitecoreMvc"/> 

然後在我的CustomExternalLinkForm I類覆蓋在onload方法,並添加一些邏輯,像這樣:

public class CustomExternalLinkForm : Sitecore.Shell.Applications.Dialogs.ExternalLink.ExternalLinkForm 
{ 
    protected override void OnLoad(EventArgs e) 
    { 
     base.OnLoad(e); 

     var ro = WebUtil.ParseQueryString(WebUtil.GetQueryString("ro")); 

     int titleMaxLength; 
     if (int.TryParse(ro["maxTitleLength"], out titleMaxLength)) 
      Title.Attributes.Add("MaxLength", titleMaxLength.ToString()); 
    } 
} 

的「 ro「Qs參數是Sitecore已經傳遞的內容,其內容是填充當前字段的字段源中的內容。所以這實際上可以讓你做更多的擴展。

不是最優雅的解決方案,因爲你必須編輯sitecore shell文件,但它的工作原理。

+0

謝謝。也請讓我知道一旦你得到每個模板字段,將更新,如果我得到的方法。 – Suhas

+1

我已經添加了一個擴展的解決方案,使您可以設置每個模板字段參數並應用它們。 – RvanDalen

+0

除了修改原始Sitecore文件外,您可以將其複製並粘貼到覆蓋文件夾中。然後你修改覆蓋文件夾中的那個。 –