mvc Kendo UI Globalización/Paquetes de idiomas




kendo ui grid local data (2)

Kendo UI no viene con paquetes de localización. Solo puede elegir un archivo cultural que solo configurará formatos de número y fecha, pero no los textos reales que se muestran en los widgets (por ejemplo: los textos del buscapersonas - elementos por página, página siguiente, etc., los menús de filtro (Es igual a , etc.), las partes de la cuadrícula (arrastre una columna aquí ...), etc.

Para localizar un widget, debe pasar, en las opciones individuales de cada widget, un grupo de mensajes para anular los mensajes utilizados por defecto por Kendo UI. Algo como esto:

 filterable: {
        messages: {
            info: "Título:", // sets the text on top of the filter menu
            filter: "Filtrar", // sets the text for the "Filter" button
            clear: "Limpar", // sets the text for the "Clear" button

            // when filtering boolean numbers
            isTrue: "é verdadeiro", // sets the text for "isTrue" radio button
            isFalse: "é falso", // sets the text for "isFalse" radio button

            //changes the text of the "And" and "Or" of the filter menu
            and: "E",
            or: "Ou"
        },
        operators: {
            //filter menu for "string" type columns
            string: {
                eq: "Igual a",
                neq: "Diferente de",
                startswith: "Começa com",
                contains: "Contém",
                endswith: "Termina em"
            },
            //filter menu for "number" type columns
            number: {
                eq: "Igual a",
                neq: "Diferente de",
                gte: "Maior que ou igual a",
                gt: "Mair que",
                lte: "Menor que ou igual a",
                lt: "Menor que"
            },
            //filter menu for "date" type columns
            date: {
                eq: "Igual a",
                neq: "Diferente de",
                gte: "Maior que ou igual a",
                gt: "Mair que",
                lte: "Menor que ou igual a",
                lt: "Menor que"
            }
        }
    },
  groupable: {
    messages: {
      empty: "Arraste colunas aqui para agrupar pelas mesmas"
    }
  }

Por supuesto, puede compartir estas opciones en una sola variable de JavaScript, pero luego se enfrentará a un problema inesperado: si tiene mensajes para TODAS las opciones de todos los widgets recopilados en una única variable de opción, ENCIENDE todas esas opciones para todas las cuadrículas. Si quiere una grilla sin agrupar, tendrá que tener una variable de opciones localizadas separada sin groupable o de lo contrario, incluso si no quiere, el grupo se mostrará porque el groupable: { messages: { .... } } haga que Kendo lo reconozca como habilitado.

No parece ser de ninguna manera para localizar los controles al incluir solo un JavaScript adicional para anular esos mensajes, como se puede ver en los foros de la interfaz de usuario de Kendo .

¿Hay alguna otra manera de hacer eso?

(fíjate que responderé a mi propia pregunta y no sufro de desorden bipolar. ¡Es solo una forma de involucrar a la comunidad en el proyecto kendo-global!)


El proyecto kendo-global en github facilita la localización de todos los textos localizables en todos los widgets de interfaz de usuario de Kendo al incluir solo el archivo de idioma deseado de esta manera:

<script src="http://cdn.kendostatic.com/2012.3.1114/js/kendo.all.min.js"></script>
<script src="\js\lang\kendo.pt-BR.js"></script>

Funciona anulando las opciones predeterminadas en los prototipos de los widgets, por lo que funcionará como si esos widgets se hubieran creado de forma nativa en el idioma esperado.

Como no cambia nada, y no anula ningún método, aún podrá pasar opciones personalizadas con mensajes personalizados utilizando el enfoque estándar si necesita un mensaje específico en un widget individual (en lugar de "10 itens"). "es posible que desee mostrar" 10 productos "en el busca de la cuadrícula ...)

El proyecto actualmente tiene solo unos pocos paquetes de idiomas. Traducir es muy fácil y se otorgarán créditos completos a todos y cada uno de los traductores. Entonces los contribuyentes son realmente bienvenidos.

La página del proyecto se puede encontrar aquí: https://github.com/loudenvier/kendo-global


Estoy trabajando con Telerik Controls Q1 2013 SP1. Parece que ya no puede anular los mensajes de muchas de las etiquetas o información sobre herramientas de la red Kendo. Aquí hay una lista de varios mensajes / información sobre herramientas que no pude anular utilizando un archivo de idioma kendo-global:

  • Artículos por página
  • primero
  • Anterior
  • Siguiente
  • Último

No tengo una buena respuesta a la pregunta original. Vale la pena mencionar que para mi propósito, la solución fue usar la API Fluent

@(Html.Kendo().Grid<Whatever>()
    .Name("Grid")
    .Pageable(e => e           
        .Messages(p => p.ItemsPerPage("")
            .First("לדף הראשון")
            .Previous("לדף הקודם")
            .Next("לדף הבא")
            .Last("לדף האחרון")
            .Refresh("ריענון")
            .Display("מציג {0}-{1} מתוך {2} רשומות")
            .Page("דף")
            .Of("מתוך {0}")))
 ...