extraño problema, se inició con la migración a Visual Studio 2010.VS diseñador reemplaza cadenas "vacíos" con identificador de recurso que apunta a cadenas vacías
Algunas formas, al abrirse, tendrá propiedades de algunos objetos establecen en una cadena que es vacío en el archivo de recursos. La mayoría de las veces estas son propiedades de control como ImageKey
, ToolTipText
y para UltraGrid algunas columnas obtienen columnX.Header.Caption
en esa cadena. Obviamente, esto eliminará imágenes establecidas y dará textos de encabezado de columna incorrectos en otras configuraciones regionales. Además, la información sobre herramientas aparecerá en lugares extraños (como el cuerpo del panel de pestañas).
Este string (strSaveInterestDetails8 a continuación) está vacío en Strings.resx (<value />
), pero no está vacío en Strings.fi.resx. Cuando cambié esta cadena para tener un espacio, el diseñador comenzó a usar otra cadena "vacía" de Strings.resx ..
Todos estos formularios derivan de una base común, pero no tiene nada especial/sospechoso. La depuración de estas instancias devenv adicionales falló, ya que el depurador nunca se rompió en los puntos de interrupción establecidos (se detectaron excepciones lanzadas en el código VS interno).
ejemplo:
ultraGridColumn23.Header.Caption = global::Company.Module.Properties.Strings.strSaveInterestDetails8;
...
this._timespanCheck.ImageKey = global::Company.Module.Properties.Strings.strSaveInterestDetails8;
...
this.tabPage1.ImageKey = global::Company.Module.Properties.Strings.strSaveInterestDetails8;
this.tabPage1.ToolTipText = global::Company.Module.Properties.Strings.strSaveInterestDetails8;
Así que alguien ha topado con algo similar o tiene mejor google-fu?
¿Cómo se ve el código original? ¿Estás usando '" "' o 'string.Empty'? – Oded
Anteriormente no estaban configurados (al menos ImageKey/ToolTipText). –
Me pasó a mí también, en mi caso, eliminé las cadenas vacías (y obligué a VS a identificar el cambio). ¿Podría eliminar las cadenas vacías o hacer que no estén vacías? –