Localisation dans du code C# ou javascript inclus dans un composant
Les explications suivantes vont vous permettre de localiser les messages et textes dans du code personnalisé d'un composant de formulaire. Pour cela vous devez connaître le fonctionnement de la localisation d'un formulaire Process.Studio et connaître les bases de développement en ASP, C# et javascript.
Dans la source du composant, utiliser le control aps:label pour créer la clé permettant de localiser un message
<asp:Label ID="IdLabel1" runat="server" Text="Label" meta:resourcekey="label1" Visible="false" ></asp:Label>
Dans la localisation du composant, la clé label1 sera disponible.
En C#, pour accéder au message "Label" localisé, utiliser le code suivant :
IdLabel1.Text
En javascript utiliser le code suivant :
<%= GetLocalResourceObject( "label1.Text" ) %>
Si le message est déjà présent dans la localisation globale, vous pouvez utiliser pour le javascript le code suivant :
<%= GetGlobalResourceObject("Strings", "ui_BtnCmd_Document_Cancel" ) %>
Exemple avec l'ajout d'une action permettant de lancer une alerte :
<KERNEL:CommandProvider ID="IdCommandProvider" runat="server" />
<asp:Label ID="CustomBtnActionName" runat="server" Text="Faire" meta:resourcekey="CustomBtnActionNameFaire" Visible="false" ></asp:Label>
<asp:Label ID="CustomBtnActionAlert" runat="server" Text="Message de l'alert" meta:resourcekey="CustomBtnActionAlertMsg" Visible="false" ></asp:Label>
<script runat="server">
protected override void OnLoad( EventArgs e )
{
base.OnLoad( e );
this.IdCommandProvider.AddCommand( "Application.CMD1", CustomBtnActionName.Text, "apsButton", "ButtonOnClick" );
}
</script>
<script type="text/javascript">
function ButtonOnClick() {
alert("<%= GetLocalResourceObject( "CustomBtnActionAlertMsg.Text" ) %>");
}
</script>